數據回答了ME如何使用自定義適配器解析服務器從
後,我很困惑放在哪裏以及如何使用我的自定義適配器。 我的Parser.class有它自己的Adapter,我的MainActivity傳遞3個參數給Parser.class(context,url,listview)。
(使我的問題簡單)
創建自定義佈局,自定義適配器後,和我實例化自定義適配器,我不知道該怎麼辦。
我想我的實例化自定義適配器在我的MainActivity然後創建我的Parser.class MainActivity m = new MainActivity();
,只是用我的自定義列表視圖的textviews像m.name_tv.setText(name);
和m.price_tv.setText(price)
然後改變android.R.layout.simple_list_item_1
到我的自定義列表視圖佈局R.layout.list_layout
。
我只是在試驗,因爲我無法理解。 請幫忙。
這是我Parser.class
public class Parser extends AsyncTask<Void,Integer,Integer> {
Context c;
ListView lv;
String data;
ArrayList<String> categories = new ArrayList<>();
ProgressDialog pd;
public Parser(Context c, String data, ListView lv) {
this.c = c;
this.data = data;
this.lv = lv;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
pd = new ProgressDialog(c);
pd.setTitle("Parsing Data");
pd.setMessage("Please Wait...");
pd.show();
}
@Override
protected Integer doInBackground(Void... params) {
return this.parse();
}
@Override
protected void onPostExecute(Integer integer) {
super.onPostExecute(integer);
if(integer == 1)
{
//ADAPTER
ArrayAdapter<String> adapter = new ArrayAdapter<String>(c, android.R.layout.simple_list_item_1, categories);
lv.setAdapter(adapter);
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if(position == 0){
}
}
});
}else
{
Toast.makeText(c,"Unable to Parse",Toast.LENGTH_SHORT).show();
}
pd.dismiss();
}
//PARSE RECEIVED DATA
private int parse(){
try
{
//ADD THAT DATA TO JSON ARRAY FIRST
JSONArray ja = new JSONArray(data);
//CREATE JO OBJECT TO HOLD A SINGLE ITEM
JSONObject jo = null;
categories.clear();
//LOOP THROUGH ARRAY
for(int i =0 ; i<ja.length();i++)
{
jo = ja.getJSONObject(i);
//RETRIEVE NAME
name=jo.getString("item_name");
price=jo.getString("item_price");
//ADD TO ARRAY LIST
categories.add(name + " " + price);
}
return 1;
} catch (JSONException e) {
e.printStackTrace();
}
return 0;
}
}
它應該是最好不要單獨的類或者它會工作一樣嗎?
我不認爲你讀過我的問題先生。我可以從我的服務器解析我的數據。我只是想添加一個按鈕到我的列表視圖。 –
是啊因爲你採取錯誤的方向,解析類應該帶有參考列表視圖,爲什麼你不把按鈕放在你的主要活動 –
我解決了我自己的問題。我如何標記我的問題已回答? –