안드로이드 개발 질문/답변
(글 수 45,052)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="1dip"
android:paddingBottom="1dip"
android:paddingLeft="6dip"
android:paddingRight="6dip">
<ImageView android:id="@+id/icon"
android:layout_width="24dip"
android:layout_height="24dip"/>
<TextView android:id="@android:id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:paddingLeft="6dip" />
</LinearLayout>
==================================================================================
public class Adapter6 extends ListActivity {
@Override
public void onCreate( Bundle savedInstanceState ) {
super.onCreate(savedInstanceState);
HashMap<String,Integer> iconList = getConstants();
ArrayList<HashMap<String,Object>> mList = new ArrayList<HashMap<String,Object>>();
for(String iconName:iconList.keySet()) {
HashMap<String,Object> item = new HashMap<String,Object>();
item.put("col1",iconName);
item.put("col2",iconList.get(iconName));
mList.add(item);
}
SimpleAdapter adapter6 = new SimpleAdapter(
this,
mList,
android.R.layout.activity_list_item,
new String[] { "col1","col2" },
new int[] { android.R.id.text1, android.R.id.icon } );
setListAdapter(adapter6);
}
private HashMap<String,Integer> getConstants() {
Class<?> c = android.R.drawable.class;
HashMap<String,Integer> iconList = new HashMap<String,Integer>();
Field[] flds = c.getFields();
for(Field f : flds) {
if(f.getType().equals(Integer.TYPE)) {
try {
iconList.put(f.getName(), f.getInt(null));
} catch(Exception e) { }
}
}
return iconList;
}
}
결과는
아이콘 || 아이콘 이름
이렇게 나오는데..
위에처럼 빨간색처럼 지정해 놓으면
아이콘 이름 || 아이콘이 나와야 하는거 아닌가요??