14

API 17 の時点で TwoLineListItem が非推奨になっていることに気付きました。次のように ListActivity アダプターを設定している場合、これに代わるものは何ですか?:

ArrayAdapter<File> adapter = new ArrayAdapter<File>(this,android.R.layout.simple_list_item_2,filesArrayList){
            @Override
            public View getView(int position, View convertView, ViewGroup parent){
                final TwoLineListItem row;
                if(convertView == null){
                    LayoutInflater inflater = (LayoutInflater)getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                    row = (TwoLineListItem)inflater.inflate(android.R.layout.simple_list_item_2, null);
                }else{
                    row = (TwoLineListItem)convertView;
                }
                row.getText1().setText(filesArrayList.get(position).getTitle());
                row.getText2().setText2(filesArrayList.get(position).getDescription());
                return row;
            }

        };
4

3 に答える 3

6

これが私がやった方法です:

    mAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_2, mListItems)
    {
        @Override
        public View getView(int position, View convertView, ViewGroup parent)
        {
            View row;
            if(convertView == null)
            {
                row = (View)mInflater.inflate(android.R.layout.simple_list_item_2, parent, null);
            }
            else
            {
                row = (View)convertView;
            }
            TextView v = (TextView) row.findViewById(android.R.id.text1);
            v.setText(mListItems[position]);
            v = (TextView) row.findViewById(android.R.id.text2);
            v.setText(mListSubItems[position]);
            return row;
        }
    };
    ListView lv = (ListView) getActivity().findViewById(R.id.runsListView);
    lv.setAdapter(mAdapter);
    lv.setOnItemClickListener(mMessageClickedHandler); 
于 2013-01-03T20:05:06.327 に答える
0

First は非推奨なので、それほど悪くはありません。いつまでも支えてくれるから。;)

壊れていない場合は、修正しないでください。

どんなレイアウトも自由自在!モード選択を使用している場合は、次のように、選択した状態に応答する背景を追加するだけです。

android:background="?android:attr/activatedBackgroundIndicator"
于 2013-06-19T18:39:33.537 に答える