2

ねえ、私はアンドロイド ListView を使用しています ListView アイテムをクリックすると、同じ ListView に他のアイテムを追加しながら、いくつかのアイテムを表示したいと思います。つまり、ある項目をクリックすると、同じ行にいくつかの画像が表示されるということです。別のアイテムをクリックすると、前の画像が消え、新しい行に画像が残ります。助けてくださいここに私のコードがあります

inventoryList.setAdapter(mAdapter);
    inventoryList.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // TODO Auto-generated method stub                  
            LinearLayout lButtons;

            // Hides all items in the listView adapter  
            for (int i = 0; i < inventoryList.getAdapter().getCount(); i++) {


                   View v1 = inventoryList.getChildAt(i);  
                   lButtons = (LinearLayout) v1.findViewById(R.id.layout_update_buttons);
                   lButtons.setVisibility(View.GONE);


            }

            //Display images of currently clicked item
            lButtons = (LinearLayout) arg1.findViewById(R.id.layout_update_buttons);
            lButtons.setVisibility(View.VISIBLE);

        }

    });

現在、この特定の行で java.lang.nullPointerException が発生しています

lButtons = (LinearLayout) v1.findViewById(R.id.layout_update_buttons);
4

1 に答える 1

1

これが私がいくつかの助けの後に得た答えです

inventoryList.setAdapter(mAdapter);
    inventoryList.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // TODO Auto-generated method stub                  
            LinearLayout lButtons;

            // Hides all items in the listView adapter  
            for (int i = 0; i < inventoryList.getAdapter().getCount(); i++) {


                   View v1 = inventoryList.getChildAt(i);  
                   if(v1 != null){
                   lButtons = (LinearLayout) v1.findViewById(R.id.layout_update_buttons);
                   lButtons.setVisibility(View.GONE);
                   }


            }

            //Display images of currently clicked item
            lButtons = (LinearLayout) arg1.findViewById(R.id.layout_update_buttons);
            lButtons.setVisibility(View.VISIBLE);

        }

    });
于 2013-09-17T11:42:48.133 に答える