[英]ListView with 2 TextViews
我正在嘗試使用2個Textviews為每個項目發布特定消息,但是ListView接受1個適配器並顯示該適配器給定的數據
屏幕快照顯示,已經從數據庫中檢索了數據並將其放入de ListView中,只有小文本數據丟失了。
碼:
public class ReservationsActivity extends AppCompatActivity {
List<String> subTextList = new ArrayList<>();
List<String> titleList = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reservations);
listReservations = (ListView)
findViewById(R.id.listReservationsView);}
public void getReservations() {
subTextList = new ArrayList<>();
titleList = new ArrayList<>();
titleAdapter = new ArrayAdapter<>(this, R.layout.row, R.id.title, titleList);
subTextAdapter = new ArrayAdapter<>(this,R.layout.row,R.id.subText, subTextList);
listReservations.setAdapter(subTextAdapter);
listReservations.setAdapter(titleAdapter);
AsyncTask<Void, Void, String> task = new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... params) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ReservationsActivity.this);
String accessToken = prefs.getString("accessToken", null);
String web_adres = getString(R.string.web_adres);
String ip_adres = getString(R.string.ip_adres);
Ion.with(ReservationsActivity.this)
.load(web_adres + "/reservations?accessToken=" + accessToken)
.proxy(ip_adres, 8080)
.asJsonArray()
.setCallback(new FutureCallback<JsonArray>() {
@Override
public void onCompleted(Exception e, JsonArray result) {
jsonArray = result;
for (int i = 0; i < result.size(); i++) {
JsonObject jsonObject = result.get(i).getAsJsonObject();
JsonObject date = jsonObject.get("date").getAsJsonObject();
JsonObject time = jsonObject.get("time").getAsJsonObject();
String title = date.get("dayOfMonth").toString() + "/"
+ date.get("monthValue").toString() + "/"
+ date.get("year").toString();
String subtext;
if (time.get("id").getAsInt() == 1) {
subtext = getString(R.string.morning);
//imageInt = R.drawable.parking_morning;
} else if (time.get("id").getAsInt() == 2) {
subtext = getString(R.string.afternoon);
//imageInt = R.drawable.parking_afternoon;
} else if (time.get("id").getAsInt() == 3) {
subtext = getString(R.string.day);
//imageInt = R.drawable.parking_fullday;
} else
subtext = getString(R.string.day);
titleAdapter.add(title);
subTextAdapter.add(subtext);
//TODO set Image per item
//image.setImageResource(imageInt);
titleAdapter.notifyDataSetChanged();
subTextAdapter.notifyDataSetChanged();
}
}
});
return null;
}
};
task.execute();
}
如何使它填充所有物品?
以下內容可能對您有幫助:
ArrayAdapter
或BaseAdapter
才能實現您的觀點。 TextViews
和一個ImageView
。 getView
方法中,根據您的要求填充數據。 這可能會幫助您。
希望有幫助!!!
您需要使用一個自定義視圖/布局創建一個自定義ArrayAdapter,如果您的案例包含兩個textView,您可以看到我的舊帖子,其中包含用於創建一個自定義適配器的代碼。
告訴我我是否對您有幫助,並提供良好的編程!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.