想写一个记事本程序,先学学ListView。
每一个ListActivity,都要在布局文件中加上一个id为list的ListView
,而且id是android:id/list,而不是@+id/list。
一个ListActivity要对应一个ListAdapter用来管理ListView中的项目
,并用setListAdapter();来绑定到类上。
重写onListItemClick();方法,来处理点击项目事件。
用Intent把itemId传给打开的Activity,来判断加载什么信息。
效果如下:
每一个ListActivity,都要在布局文件中加上一个id为list的ListView
,而且id是android:id/list,而不是@+id/list。
一个ListActivity要对应一个ListAdapter用来管理ListView中的项目
,并用setListAdapter();来绑定到类上。
重写onListItemClick();方法,来处理点击项目事件。
用Intent把itemId传给打开的Activity,来判断加载什么信息。
具体代码如下:
MainActivity.java
package johnsonyue.training.breakingbadcharacters;
import java.util.ArrayList;
import java.util.List;
import android.os.Bundle;
import android.app.ListActivity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List<String> mList = createList();
ArrayAdapter<String> mArrayAdapter= new ArrayAdapter<String>(this,R.layout.item,mList);
setListAdapter(mArrayAdapter);
}
private List<String> createList(){
List<String> mList = new ArrayList<String>();
String[] mStrings = new String[]{"Walter White","Jesse Pinkman","Gustavo Fring","Hank Schrader","Skyler White","Walter Jr."};
for(int i=0;i<6;i++){
mList.add(mStrings[i]);
}
return mList;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
Intent mIntent = new Intent(MainActivity.this,Introductions.class);
Bundle mBundle = new Bundle();
mBundle.putLong("item_id", id);
mIntent.putExtras(mBundle);
startActivity(mIntent);
}
}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
></ListView>
</LinearLayout>
效果如下: