【原创】Android仿新浪微博的“更多”页面效果

本文介绍了一种模仿新浪微博中“更多”页面效果的方法,通过使用ListView组件并结合自定义适配器来展示列表项,实现了良好的视觉效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看到新浪微博那个“更多”页面的效果,感觉不错,所以拿来模仿一下,其实实现就是一个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="http://schemas.android.com/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]http://my.iteye.com/admin/picture/113297" alt="[/img]


[img]http://my.iteye.com/admin/picture/113297" alt="[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值