android SetonimeClickListener从其他活动返回时不响应
我的活动中有一个列表视图。 第一次单击listview项时,它工作正常。 当我按下“后退”按钮并返回此活动时,我无法再单击该项目。 此listview可与android2配合使用。 当我使用安卓4进行测试时,会出现这个问题 我发现了这样的问题,我尝试了所有的“下降视力”方法, 但还没有解决。 我知道我不应该发布几乎相同的问题。但我在那里找不到任何合适的答案 请帮我解决这个问题 这是我孩子的活动android SetonimeClickListener从其他活动返回时不响应,android,listview,back,Android,Listview,Back,我的活动中有一个列表视图。 第一次单击listview项时,它工作正常。 当我按下“后退”按钮并返回此活动时,我无法再单击该项目。 此listview可与android2配合使用。 当我使用安卓4进行测试时,会出现这个问题 我发现了这样的问题,我尝试了所有的“下降视力”方法, 但还没有解决。 我知道我不应该发布几乎相同的问题。但我在那里找不到任何合适的答案 请帮我解决这个问题 这是我孩子的活动 public class TabChild1 extends NavigationActivity {
public class TabChild1 extends NavigationActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tabchild1);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
adapter.add("red");
adapter.add("green");
adapter.add("blue");
ListView listView = (ListView) findViewById(R.id.listview);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
ListView listView = (ListView) parent;
String item = (String) listView.getItemAtPosition(position);
Intent intent = new Intent(TabChild1.this, TabChild2.class);
int iNum = position;
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
goNextHistory("TabChild2", intent);
}
});
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
}
这是我的NavigationGroupActivity
公共类NavigationGroupActivity扩展了ActivityGroup{
ArrayList<View> history;
NavigationGroupActivity group;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
history = new ArrayList<View>();
group = this;
}
public void changeView(View v) {
history.remove(history.size() - 1);
history.add(v);
setContentView(v);
}
public void replaceView(View v) {
history.add(v);
setContentView(v);
}
public void back() {
if(history.size() > 1) {
history.remove(history.size() - 1);
setContentView(history.get(history.size() - 1));
} else {
finish();
}
}
@Override
public void onBackPressed() {
group.back();
return;
}
ArrayList历史;
导航组活动组;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
历史=新的ArrayList();
组=此;
}
公共视图(视图v){
history.remove(history.size()-1);
历史。添加(v);
setContentView(v);
}
公共视图(视图v){
历史。添加(v);
setContentView(v);
}
公众退票(){
if(history.size()>1){
history.remove(history.size()-1);
setContentView(history.get(history.size()-1));
}否则{
完成();
}
}
@凌驾
public void onBackPressed(){
组背();
返回;
}
}
和我的child1布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
我认为必须在类TabChild1的onBackPressed()方法中使用finish()。并在类NavigationActivity的onBackPressed()方法中注释行parent.back()。
我想这对你有用 我认为必须在类TabChild1的onBackPressed()方法中使用finish()。并在类NavigationActivity的onBackPressed()方法中注释行parent.back()。
我想这对你有用 谢谢,SAURABH_12。我听从了你的建议,但不幸的是没有奏效。你还有其他可能的解决办法吗?谢谢,SAURABH_12。我听从了你的建议,但不幸的是没有奏效。你还有其他可能的解决办法吗?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="wrap_content" />