我正在尝试在textview
点击后启用listview
,然后再打开另一个layout
:
private class IndexListAdapter extends ArrayAdapter<Index>{
public IndexListAdapter(){
super(MainActivity.this, R.layout.listview_item, index);
}
@Override
public View getView(int position, View view, ViewGroup parent){
if (view == null)
view = getLayoutInflater().inflate(R.layout.listview_item, parent, false);
Index currentIndex = index.get(position);
TextView name = (TextView) view.findViewById(R.id.pName);
name.setText(currentIndex.getName());
name.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
items.add(new Item(patientTxt.getText().toString(), operatorTxt.getText().toString(),
serialTxt.getText().toString(), deviceTxt.getText().toString(), dateTxt.getText().toString(),
assetTxt.getText().toString(), locationTxt.getText().toString(), qcTxt.getText().toString()));
populateList();
Intent intent = new Intent(MainActivity.this, Item.class);
startActivity(intent);
finish();
}
});
return view;
}
}
我要做的是,我将在listview_item
或列表标签上显示一个名称,当我点击该名称时,它会打开另一个layout
或页面显示另一个项目列表。
答案 0 :(得分:0)
你不能在你的自定义适配器中这样调用,所以你会尝试这样做它将起作用
Intent intent = new Intent(MainActivity.this, Item.class);
startActivity(intent);
finish();
你会改变这个。 您只需发送上下文并使用该上下文调用意图
Intent i = new Intent(mContext, TabActivityPacs.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.putExtra("STUDY", study);
mContext.startActivity(i);
答案 1 :(得分:0)
如果您无法获得TextView
为您的TextView
android:focusableInTouchMode="false"
还要添加
android:descendantFocusability="blocksDescendants"