看到新浪微博那个“更多”页面的效果,感觉不错,所以拿来模仿一下,其实实现就是一个listview,再加上一些图片:
直接上代码,首先是Activity
public class MoreActivity extends Activity implements OnItemClickListener { private String[] datas = null; ListView mineListView; TextView title; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.birth_more); datas = getResources().getStringArray(R.array.set); initViews(); } private void initViews() { mineListView = (ListView) findViewById(R.id.phoneMyMainListView); mineListView.setAdapter(mAdapter); title = (TextView) findViewById(R.id.module_title_text_view); title.setText(R.string.more); mineListView.setOnItemClickListener(this); } private BaseAdapter mAdapter = new BaseAdapter() { public int getCount() { return datas.length; } public Object getItem(int position) { return null; } public long getItemId(int position) { return 0; } public View getView(int position, View convertView, ViewGroup parent) { View retval = LayoutInflater.from(parent.getContext()).inflate( R.layout.more_adapter, null); TextView title = (TextView) retval .findViewById(R.id.phoneMyMainText); title.setText(datas[position]); if(position == 0){ retval.setBackgroundResource(R.drawable.moreitem_bg_top); }else if(position == (datas.length-1)){ retval.setBackgroundResource(R.drawable.moreitem_bg_bottom); }else { retval.setBackgroundResource(R.drawable.moreitem_bg_middle); } return retval; } }; @Override public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) { switch (position) { case 0: break; case 1: break; case 2: Intent intent = new Intent(this, AppStoreActivity.class); startActivity(intent); break; case 3: break; case 4: break; case 5: showAboutDialog(); break; } } private void showAboutDialog() { BirthDialogBuilder idb = new BirthDialogBuilder(this); idb.setTitle(R.string.about); idb.setMessage("测试内容"); idb.setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); idb.show(); } }
然后是more_adapter的xml文件
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/item_bg" > <TextView android:id="@+id/phoneMyMainText" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:duplicateParentState="true" android:singleLine="true" android:textAppearance="?android:textAppearanceMedium" android:textColor="#2475b6" /> </RelativeLayout>
图片可以从新浪微博那里获得,最终效果如下图:
[img]/admin/picture/113297" alt="[/img]
[img]/admin/picture/113297" alt="[/img]