我有一个像这样的 cart_layout
:
<?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:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="9"
android:id="@+id/cart_listview"
android:layout_gravity="center_horizontal"
android:background="@color/whiteBg"/>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="bottom"
android:padding="5dp"
android:gravity="bottom"
android:background="@color/whiteBg">
<!-- this layout contains a button and a textview which I don't think is the problem -->
</LinearLayout>
</LinearLayout>
以及 Cart.java
中的 java 代码:
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cart_layout);
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
dbhandler = new DatabaseHandler(this);
product_all = dbhandler.getProduct();
total = (TextView)findViewById(R.id.cart_total_textview);
listview = (ListView)findViewById(R.id.cart_listview);
cart_adapter = new Custom_Cart_Adapter(this,product_all);
listview.setAdapter(cart_adapter);
listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Log.v("ITEM CLICK","CLICKED ITEM POSITION: "+position);
Intent intent = new Intent(Cart.this, Item_edit_details.class);
intent.putExtra("the_product", product_all.get(position));
startActivity(intent);
}
});
}
我只想制作一个 OnItemClick 事件,但每次点击该项目时,即使 listview.setOnItemClickListener
存在与否,Logcat 也会显示
ViewRootImpl: ViewPostImeInputStage processPointer 0
ViewRootImpl: ViewPostImeInputStage processPointer 1
什么都没有发生。
我也看到这样一个奇怪的日志,有时说“真”有时说“假”:
ActivityThread: updateVisibility : ActivityRecord{3308191 token=android.os.BinderProxy@c7ed098 {com.iwant.namhhgames.newiwant/com.iwant.namhhgames.newiwant.Listing_items}} show : false
我不知道它是否与问题有关,我不知道问题何时发生,可能是我搞砸了。
并且 Logcat 仅针对真实设备显示。使用 AVD,什么都不会显示。
感谢您宝贵的时间。
最佳答案
这个运行没有问题,所以也许你的适配器
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.testlist);
ListView listview = (ListView)findViewById(R.id.listest);
ArrayList<String> cart_adapter = new ArrayList<String>();
cart_adapter.add("Me");
cart_adapter.add("Him");
cart_adapter.add("You");
listview.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,cart_adapter));
listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Log.e("ITEM CLICK","CLICKED ITEM POSITION: "+position);
}
});
}
11-16 14:55:31.735 1915-1915/ca.dti.grounded.app E/ITEM CLICK: CLICKED ITEM POSITION: 2 11-16 14:55:34.233 1915-1915/ca.dti.grounded.app E/ITEM CLICK: CLICKED ITEM POSITION: 0 11-16 14:55:35.616 1915-1915/ca.dti.grounded.app E/ITEM CLICK: CLICKED ITEM POSITION: 1 11-16 14:55:36.061 1915-1915/ca.dti.grounded.app E/ITEM CLICK: CLICKED ITEM POSITION: 2
关于java - ViewRootImpl : ViewPostImeInputStage processPointer 0 on OnItemClick of Listview in android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36969668/