android日记本代码
时间:2025-07-09
时间:2025-07-09
一、实验详细代码
(1) 布局的代码
a. edit.xml代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://www.77cn.com.cn/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="主题"
android:padding="2px" />
<EditText android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" />
</LinearLayout>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="内容" />
<EditText android:id="@+id/body"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:scrollbars="vertical" android:gravity="top" />
<Button android:id="@+id/confirm" android:text="确定" android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
b. list.xml的代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://www.77cn.com.cn/apk/res/android" android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ListView android:id="@+id/android:list"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView android:id="@+id/android:empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="按下MENU写日记!!" />
</LinearLayout>
c. row.xml的代码
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/row"
xmlns:android="http://www.77cn.com.cn/apk/res/android" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="30px"
android:maxWidth="200dip"
android:textSize="22sp"
android:layout_marginTop="10dip"
android:text="第1组第1项" />
<TextView android:id="@+id/created"
android:layout_width="wrap_content"
android:layout_height="35px"
android:layout_alignParentRight="true"
android:layout_marginLeft="10dip"
android:layout_marginTop="10dip"
android:text="2011年10月30日" />
</RelativeLayout>
(2) 主要程序代码
a. DiaryBookDemo代码
public class DiaryBookDemo extends ListActivity {
private static final int ACTIVITY_CREATE = 0;
private static final int ACTIVITY_EDIT = 1;
private static final int INSERT_ID = Menu.FIRST;
private static final int DELETE_ID = Menu.FIRST + 1;
private DiaryDbAdapter mDbHelper;
private Cursor mDiaryCursor;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(http://www.77cn.com.cnyout.list);
mDbHelper = new DiaryDbAdapter(this);
mDbHelper.open();
renderListView();
startService(new Intent(this, TimerServer.class)); }
private void renderListView() {
mDiaryCursor = mDbHelper.getAllNotes();
startManagingCursor(mDiaryCursor);
String[] from = new String[] { DiaryDbAdapter.KEY_TITLE, DiaryDbAdapter.KEY_CREATED };
int[] to = new int[] { R.id.text1, R.id.created };
SimpleCursorAdapter notes = new SimpleCursorAdapter(this, http://www.77cn.com.cnyout.row, mDiaryCursor, from, to);
setListAdapter(notes);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.add(0, INSERT_ID, 0, "插入");
menu.add(0, DELETE_ID, 0, "删除");
return true;
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
switch (item.getItemId()) {
case INSERT_ID:
createDiary();
return true;
case DELETE_ID:
mDbHelper.deleteDiary(getListView().getSelectedItemId());
renderListView();
return true;
}
return super.onMenuItemSelected(featureId, item); }
private void createDiary() {
Intent i = new Intent(this, ActivityDiaryEdit.class); startActivityForResult(i, ACTIVITY_CREATE);
}
@Override
// 需要对position和id进行一个很好的区分
// position指的是点击的这个ViewItem在当前ListView中的位置 // 每一个和ViewItem绑定的数据,肯定都有一个id,通过这个id可以找到那条数据。
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Cursor c = mDiaryCursor;
c.moveToPosition(position);
Intent i = new Intent(this …… 此处隐藏:7945字,全部文档内容请下载后查看。喜欢就下载吧 ……
下一篇:杜邦财务分析案例1