0

ListViewがあり、独自にカスタマイズしたListItemがあり、アクションリスナーを適用していますが、イベントに応答していません。

private class CustomAdapter extends ArrayAdapter<FriendInfo> {

        public CustomAdapter (Context context, int textViewResourceId,
                ArrayList<FriendInfo> friendList) {
            super(context, textViewResourceId, friendList);


        }

        public View getView(int position, View convertView, ViewGroup parent) {
            View v = convertView;           

            try {
                if (v == null) {
                    LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                    v = vi.inflate(R.layout.friend_item, null);
                }               

                 if(isViewInvitations){
                    Button btn_AcceptFrndReq = (Button)v.findViewById(R.id.btnAcceptFrndReq);
                    Button btn_DelFrnd = (Button)v.findViewById(R.id.btnDelFrnd);
                    btn_DelFrnd.setClickable(true);
                    btn_AcceptFrndReq.setVisibility(View.VISIBLE);
                    btn_DelFrnd.setVisibility(View.VISIBLE);


                    btn_AcceptFrndReq.setOnClickListener(new OnClickListener() {
                        public void onClick(View arg0) {                    
                            Toast.makeText(getContext(), "Accept", Toast.LENGTH_LONG);

                        }
                    });
                    btn_DelFrnd.setOnClickListener(new OnClickListener() {
                        public void onClick(View arg0) {        
                            //do delete call here in new thread
                            Toast.makeText(context, "Delete", Toast.LENGTH_LONG);
                        }
                    });

                }
4

2 に答える 2

3

注意すべき点の1つは、トーストを作成するときに、トーストを表示しないことです。

変化する:

Toast.makeText(getContext(), "Accept", Toast.LENGTH_LONG);

Toast.makeText(getContext(), "Accept", Toast.LENGTH_LONG).show();

それでもトーストが表示されない場合は、にView渡されたからコンテキストを取得してみてくださいonClick

Toast.makeText(arg0.getContext(), "Accept", Toast.LENGTH_LONG).show();
于 2010-12-07T13:18:30.683 に答える
0
implements View.OnClickListener and override public void onClick(View v) { method 

and all done 
于 2010-12-07T12:38:08.597 に答える