super.onCreate(savedInstanceState);
listView = getListView();
adapter = new ListViewAdapter(this, android.R.layout.simple_list_item_1);
listView.setAdapter(adapter);
// listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
// @Override
// public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// Toast.makeText(getApplicationContext(), position + "", Toast.LENGTH_SHORT).show();
// }
// });
}
private class ListViewAdapter extends ArrayAdapter {
private Context context;
private int resId;
public ListViewAdapter(@NonNull Context context, int resource) {
super(context, resource);
this.context = context;
this.resId = resource;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(context).inflate(resId, null);
}
TextView textView = convertView.findViewById(android.R.id.text1);
textView.setText(position + "");
convertView.setOnTouchListener(new View.OnTouchListener() {
private int oldX;
private int RIGHT_EDGE = listView.getRight();
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
oldX = (int) event.getX();
break;
case MotionEvent.ACTION_MOVE:
int dx = (int) event.getX() - oldX;
int right = v.getRight() + dx;
if (right > RIGHT_EDGE) {
Log.d(TAG, "超出右边");
break;
}
v.layout(v.getLeft() + dx, v.getTop(), v.getRight() + dx, v.getBottom());
break;
}
return true;
}
});
return convertView;
}
@Override public int getCount() { return 20; } } }
文末
不管怎么样,不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流啊~
小编将自己6年以来的面试经验和学习笔记都整理成了一个**937页的PDF,**以及我学习进阶过程中看过的一些优质视频教程。**上传在我的GitHub中:Android架构视频+BATJ面试专题PDF+学习笔记**请君自取,无偿分享!
其实看到身边很多朋友抱怨自己的工资很低,包括笔者也是一样的,其原因是在面试过程中没有给面试官一个很好的答案。所以笔者会持续更新面试过程中遇到的问题,也希望大家和笔者一起进步,一起学习。