hashadmap으로 simpleadapter 빌드로 navigationDrawer Android 메뉴를 채우려고합니다.simpleadapter를 사용하여 navigationDrawer android를 채우는 방법은 무엇입니까?
내 코드는 다음과 같습니다. 내 탐색 창 메뉴의 각 항목을 작성하기 위해 각 항목에 대해 txt 및 img 값을 검색하는 방법을 모르겠습니다.
제 코드를 좀 봐 주시겠습니까?
SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), listinfo, R.layout.drawer_list_item, from, to);
mDrawerList.setAdapter(adapter);
하지만 난 각 항목에 대해 글꼴을 설정하기 위해의 getView를 구현해야합니다
는 그 다음 라인을 사용하여이 작업을 수행 할 수 있습니다 알고 있습니다.
String[] names = new String[]{
"Home",
"International",
"National",
"High Tech",
"Sports",
};
/*Array of Images*/
int[] image = new int[] {
R.drawable.ic_action_home,
R.drawable.ic_action_globe,
R.drawable.ic_action_feed,
R.drawable.ic_action_tv,
R.drawable.ic_action_ball,
};
List<HashMap<String, String>> listinfo = new ArrayList<HashMap<String, String>>();
listinfo.clear();
for(int i=0;i<names.length;i++){
HashMap<String, String> hm = new HashMap<String, String>();
hm.put("name", names[i]);
hm.put("image", Integer.toString(image[i]));
listinfo.add(hm);
}
// Keys used in Hashmap
final String[] from = { "image", "name" };
int[] to = { R.id.img, R.id.txt };
// The 2 followings lines works fine but i want to implement getView in order to set Typeface on my text
// SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), listinfo, R.layout.drawer_list_item, from, to);
// mDrawerList.setAdapter(adapter);
SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), listinfo, R.layout.drawer_list_item, from, to){
@Override
public View getView(int pos, View convertView, ViewGroup parent){
View v = convertView;
if(v== null){
LayoutInflater vi = (LayoutInflater)getSystemService(getBaseContext().LAYOUT_INFLATER_SERVICE);
v=vi.inflate(R.layout.drawer_list_item, null);
}
TextView tv = (TextView)v.findViewById(R.id.txt);
tv.setText(??????????);
tv.setTypeface(faceBold);
return v;
}
};
mDrawerList.setAdapter(adapter);
사용자 지정 어댑터 사용 – Raghunandan