HashMap<String,Object>
데이터의 컬렉션은 ArrayList
입니다.데이터를 ListView에 배열
ArrayList
에 HashMap
데이터를 추가하기 위해 다음 방법을 사용했습니다.
mylist = new ArrayList<HashMap<String, Object>>();
for (Data dt : data) {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("id", dt.getWeekNo());
map.put("description", dt.getDesc());
map.put("Amount", dt.getAmount());
mylist.add(map);
}
Data
는 Getters
및 Setters
목적에만 사용되는 별도의 클래스입니다. 나는 내 목록보기에 다음과 같은 원하는
3 | Income | 1000
5 | Income | 1500
3 | Expense | 250
5 | Expense | 500
: 같은
지금 내 출력됩니다.
3 | Income : 1000 | Expense : 250
5 | Income : 1500 | Expense : 500
나는 어떻게 달성 해야할지 몰라. 나는 어떤 생각을하는지 모른다. 그래서 나는 어디에서 시작해야할지 모른다.
업데이트 : 이것은 내가 getview()
방법
ListAdapter adapter
= new SimpleAdapter(this, mylist, R.layout.txnlist,
new String[] {"id", "description", "Amount" },
new int[] { R.id.txntext1, R.id.txntext2, R.id.txntext3 }) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.txnlist, null);
}
Collection<Object> str = mylist.get(position).values();
ArrayList<Object> al1 = new ArrayList<Object>(str);
TextView amnt = (TextView) v.findViewById(R.id.txntext3);
if (al1.get(2).toString().equals("Income"))
amnt.setTextColor(Color.GREEN);
if (al1.get(2).toString().equals("Expense"))
amnt.setTextColor(Color.RED);
return super.getView(position, v, parent);
}
};
ListView lv1 = (ListView) findViewById(R.id.repListView);
도움말 나 친구들과 목록보기 내 목록에 적응 오전 방법입니다.
미리 감사드립니다.
사용자 정의 adpter를 만들고 getView()를 재정의하십시오. –
where는 listView에 데이터를 추가하는 코드입니다. 여기에 또한 추가하십시오. – AAnkit
@NiravRanpara 제가 오버라이드했습니다. 나는 소득과 지출을 함께 모으는 법을 모릅니다. – Gunaseelan