ActionBar
相信大家都用过微信,微信的界面我们从上往下看,首先是一个ActionBar,并且自定义了ActionProvider,就是那个“加号”,里面有五个子菜单。今天就来试着模仿微信写一个UI界面。
我们先创建一个主Activity,用于显示微信的主界面:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_main);
}
}
接下来在Manifest.xml布局文件中注册,并修改Theme属性(AcitonBar的主题):
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@android:style/Theme.Holo.Light">
<activity android:name=".MainActivity"
android:label="微信">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
接下来创建一个MyActionProvider继承自AcitonProvider,并重写onCreateActionView()和onPrepareSubMenu()方法:
public class MyActionProvider extends ActionProvider{
public MyActionProvider(Context context) {
super(context);
}
@Override
public View onCreateActionView() {
return null;
}
@Override
public boolean hasSubMenu() {
return true;
}
@Override
public void onPrepareSubMenu(SubMenu subMenu) {
subMenu.clear();//注意这个方法
subMenu.add("发起群聊").setIcon(R.drawable.item1)
.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
//添加点击事件
return true

这篇博客介绍了如何在Android中仿照微信UI创建主界面,包括自定义ActionBar、添加ActionProvider、创建底部导航栏及Fragment切换。作者详细讲解了每个步骤,从注册Activity、设置ActionBar主题,到创建自定义ActionProvider,以及处理点击事件和修改样式。最后展示了代码实现和运行效果。
最低0.47元/天 解锁文章
737





