2011-07-14 1 views
1

The Busy Coder's Guide to Android Developmentを参照しています。それは役に立つテクニックをたくさん書いた非常によく書かれた本です。私はまだ1つを買っていない、私はちょうどサンプルの章を終えた。「Android開発用ビジターガイド」のIconicAdapterの例

ページで
class IconicAdapter extends ArrayAdapter<String> { 
    IconicAdapter() { 
     super(DynamicDemo.this, R.layout.row, R.id.label, items); 
    } 

    public View getView(int position, View convertView, ViewGroup parent) { 
     View row=super.getView(position, convertView, parent); 
     ImageView icon=(ImageView)row.findViewById(R.id.icon); 

我々は例のページ105でgetLayoutInflaterを使用する必要がない理由しかし、105

class IconicAdapter extends ArrayAdapter<String> { 
    IconicAdapter() { 
     super(DynamicDemo.this, R.layout.row, items); 
    } 

    public View getView(int position, View convertView, ViewGroup parent) { 
     LayoutInflater inflater=getLayoutInflater(); 
     View row=inflater.inflate(R.layout.row, parent, false); 
     TextView label=(TextView)row.findViewById(R.id.label); 

ページでは私は、不思議でしたか?私たちは、サンプルの章では、最初のケースでは、スーパークラスはすでにあなたのためのビューを膨らませていますので、あなたがすることができるように見えますhttp://commonsware.com/Android/excerpt.pdf

答えて

2

で発見することができます

View row=super.getView(position, convertView, parent); 

でビューを取得できませんそこからsuper.getView()を呼び出します。

そして、2番目にはあなた自身が膨張しているように見えるので、表示されたコードが必要になります。