【发布时间】:2015-10-05 20:27:04
【问题描述】:
我将 ListView 连接到 Detail Activity,以便用户可以单击列表项,转到更详细的视图,然后返回。一切正常,只是有时我根本无法再单击列表项。如果我单击一个隐藏所有其他元素的按钮(setVisibility(View.GONE)),模拟器将无法识别对列表视图的单击。在列表视图再次处理交互之前,我必须单击其他元素。在堆栈中,如果这一行在底部,则列表视图不可点击:
E/Surface: getSlotFromBufferLocked: unknown buffer: 0xa2383490
我以前见过它,但直到现在我才注意到它。有人可以解释这意味着什么,如果它可能是我的问题的迹象,或者它是否可以忽略不计。
作为参考,这是导致问题的可见性更改器:
// Onclick method for Notes Collapse button
final Button buttonN = (Button) rootView.findViewById(R.id.notesSectionHeading);
buttonN.setTag(0);
final LinearLayout inputButtons = (LinearLayout) rootView.findViewById(R.id.input_control_block);
final LinearLayout inputBlock = (LinearLayout) rootView.findViewById(R.id.edit_text_block);
buttonN.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
final int status = (Integer) v.getTag();
if (status == 1) {
v.setTag(0); //pause
inputBlock.setVisibility(View.VISIBLE);
inputButtons.setVisibility(View.VISIBLE);
} else {
v.setTag(1); //pause
inputBlock.setVisibility(View.GONE);
inputButtons.setVisibility(View.GONE);
}
Toast.makeText(getActivity().getBaseContext(), "View visibility changed", Toast.LENGTH_SHORT).show();
}
}
);
【问题讨论】:
标签: android list listview click