當我們想要實現帶有圖片的listView的時候我們可以通過listView的方式來實現,也可以通過listActivity的方式來實現,下面我爲大家展示一下如何利用ListActivity的方式來實現:
首先我們要在我們的佈局文件中,寫出我們想在listview裏面每一行所展示的東西,例如我們讓我們的每一行的listview展示出一個圖片一個主標題一個內容簡介吧,那麼我們便可以
開始我們的代碼的旅程了。
在我們的佈局文件中:我們通過一個相對佈局,寫出來我們想要實現的界面的佈局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/relativeLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" /> <TextView android:id="@+id/title" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignTop="@id/image" android:layout_toRightOf="@id/image" android:textAppearance="?android:attr/textAppearanceLarge" /> <TextView android:id="@+id/info" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignLeft="@+id/title" android:layout_below="@+id/title" /> </RelativeLayout>
當我們寫好了佈局文件之後,我們就應該去寫我們的.java的文件去了,在這裏我們也僅僅需要寫好一個適配器然後利用put的方法把我們想要寫的內容適配進入我們的控件就可以了。
package com.example.lin_sir.a15_11_29_test_listactivity; import android.app.ListActivity; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.SimpleAdapter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class MainActivity extends ListActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); SimpleAdapter adapter = new SimpleAdapter(this, getData(), R.layout.activity_main, new String[]{ "title", "info", "image" }, new int[]{R.id.title, R.id.info, R.id.image}); setListAdapter(adapter); } private List<Map<String, Object>> getData() { List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); Map<String, Object> map; map = new HashMap<String, Object>(); map.put("title", "測試標題1"); map.put("info", "這是一個測試標題1"); map.put("image", R.drawable.aaa); list.add(map); map = new HashMap<String, Object>(); map.put("title", "測試標題2"); map.put("info", "這是測試標題2"); map.put("image", R.drawable.aaa); list.add(map); return list; } }