2016-11-16 5 views
0

申し訳ありませんが、ここのnoobは私の上司がこれを元の開発者から私に渡したので、アンドロイドについては何もしません。私の質問は、getView>onClickメソッドの中に余分な動的な値を渡すにはどうすればいいですか?getView onClickメソッドに余分な値を渡す

categoryCursorAdaptor

class categoryCursorAdaptor extends BaseAdapter { 

    Context context; 
    String[] data; 
    private static LayoutInflater inflater = null; 

    public categoryCursorAdaptor(Context context, String[] data) { 
     this.context = context; 
     this.data = data; 
     inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    } 

    @Override 
    public int getCount() { 
     return data.length; 
    } 

    @Override 
    public Object getItem(int position) { 
     return data[position]; 
    } 

    @Override 
    public long getItemId(int position) { 
     return position; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     View vi = convertView; 
     if (vi == null) vi = inflater.inflate(R.layout.item_category, null); 
     TextView text = (TextView) vi.findViewById(R.id.specialCatItemName); 
     text.setText(data[position]); 
     Button Button1= (Button) vi.findViewById(R.id.btnSpecialView); 
     Button1.setOnClickListener(new View.OnClickListener(){ 
      @Override 
      public void onClick(View v) { 
       //Access extra values here 
      } 
     }); 
     return vi; 
    } 
} 

CategoryActivity

String[] catValsArr = new String[arrayCatVals.size()]; 
    catValsArr = arrayCatVals.toArray(catValsArr); 
    lvSpecialCatList = (ListView) findViewById(R.id.lvSpecialCatList); 
    lvSpecialCatList.setAdapter(new categoryCursorAdaptor(this, catValsArr)); 

答えて

2

あなたはまだString Array

String myData = data[position]; //Use myData 
から適切なデータを取得するためにそれを使用 getView(....)内部 positionを持っています

未満onClick(...)

+0

ごめんなさい、もう少し説明できますか?私はちょうどあなたが言ったことの手がかりを持っていません。 –

+0

@DevilRailyあなたは 'getView(..)'メソッド内に位置していますので、 'Array'からデータを取得するために' index'として使用してください。 –

+0

私に例を挙げてもらえますか?ありがとう! –

関連する問題