0

アプリケーションに展開可能なリストがあります。グループ ビューでは、各要素の左側に画像があります。このために、相対レイアウト内に画像ビューとテキストビューを含むグループ行の xml を取得しました。私のカスタム アダプター クラスでは、これらのテキストと画像を追加しています。データベースからのテキスト。画像には描画可能な名前を付けています。以下は私のアダプタークラスです。

public View getGroupView(int groupPosition, boolean isExpanded,
        View convertView, ViewGroup parent) {

    if(convertView==null){
        LayoutInflater vi = LayoutInflater.from(context);
        convertView = vi.inflate(R.layout.event_row, null);
    }
    GroupEvent event = eventlist[groupPosition]; 
    setEventTitle(convertView,event.getEvent());
    setEventIcon(convertView,event.getEvent_icon(), event.getEvent());
    setDivider(convertView,groupPosition);
    return convertView;
}



private void setEventTitle(View convertView, String title) {
    // TODO Auto-generated method stub
    TextView event_title_field = (TextView) convertView.findViewById(R.id.event_name_field);
    event_title_field.setText(title);

}

private void setEventIcon(View convertView, int event_icon, String title) {
    // TODO Auto-generated method stub
    ImageView event_logo = (ImageView) convertView.findViewById(R.id.event_row_image);
    title = String.format( "%s%s",Character.toLowerCase(title.charAt(0)),title.substring(1));
    Log.d("Log","drawable image name "+ title);
    event_logo.setImageResource(context.getResources().getIdentifier(title, "drawable", "com.eteam.ito.history"));

}

正常に動作しています。ただし、動的なものではなく、すべての行に同じ画像が追加されます。描画可能な画像の名前とリスト要素のテキストは同じです。タイトルを使用してドローアブル アドレスを指定するには?

4

1 に答える 1

0

このように動的に追加できます

event_logo.setImageResource(getResources().getIdentifier(title, "drawable", "com.package.application"))
于 2012-07-31T11:49:22.223 に答える