Android高仿qq及微信底部菜单的几种实现方式

9

Android高仿qq及微信底部菜单的几种实现方式

Android 高仿 QQ 及微信底部菜单的几种实现方式

在 Android app 开发中,底部菜单是一个非常常见的组件。QQ 和微信等社交应用的底部菜单设计风格也很受欢迎。今天,我们将讨论如何高仿这些应用的底部菜单。

1. 使用 DrawerLayout

`DrawerLayout` 是 Android 提供的一个布局类,可以实现侧滑抽屉效果。我们可以使用 `DrawerLayout` 来实现 QQ 或微信风格的底部菜单。

```xml

android:layout_width="match_parent"

android:layout_height="match_parent">

android:layout_height="match_parent"

android:orientation="vertical">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:background="FFFFFF"

android:orientation="horizontal">

```

```javapublic class MainActivity extends AppCompatActivity {

private DrawerLayout mDrawerLayout;

private LinearLayout mBottomMenuLayout;

@Override protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mDrawerLayout = findViewById(R.id.drawer_layout);

mBottomMenuLayout = findViewById(R.id.bottom_menu_layout);

// 初始化底部菜单项 // 设置侧滑抽屉效果 mDrawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() {

@Override public void onDrawerSlide(View view, float slideOffset) {

}

@Override public void onDrawerOpened(View view) {

}

@Override public void onDrawerClosed(View view) {

}

@Override public boolean onDrawerStateChanged(int newState) {

return false;

}

});

}

}

```

2. 使用 CoordinatorLayout

`CoordinatorLayout` 是 Android 提供的一个布局类,可以实现协调布局效果。我们可以使用 `CoordinatorLayout` 来实现 QQ 或微信风格的底部菜单。

```xml

android:layout_width="match_parent"

android:layout_height="match_parent">

android:layout_height="match_parent"

android:orientation="vertical">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:background="FFFFFF"

android:orientation="horizontal">

```

```javapublic class MainActivity extends AppCompatActivity {

private CoordinatorLayout mCoordinatorLayout;

private LinearLayout mBottomMenuLayout;

@Override protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mCoordinatorLayout = findViewById(R.id.coordinator_layout);

mBottomMenuLayout = findViewById(R.id.bottom_menu_layout);

// 初始化底部菜单项 // 设置协调布局效果 mCoordinatorLayout.setBehavior(new CoordinatorLayout.Behavior() {

@Override public boolean layoutDependsOn(Context context, View view, ILayoutParameters parameters) {

return false;

}

@Override public void onDependentViewRemoved(View child) {

}

});

}

}

```

3. 使用自定义布局

我们可以使用自定义布局来实现 QQ 或微信风格的底部菜单。

```xml

android:layout_width="match_parent"

android:layout_height="match_parent">

android:layout_height="0dp"

android:layout_weight="1"

android:orientation="vertical">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:background="FFFFFF"

android:orientation="horizontal">

```

```javapublic class MainActivity extends AppCompatActivity {

private LinearLayout mLayout;

private LinearLayout mBottomMenuLayout;

@Override protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mLayout = findViewById(R.id.layout);

mBottomMenuLayout = findViewById(R.id.bottom_menu_layout);

// 初始化底部菜单项 // 设置自定义布局效果 mLayout.setOrientation(LinearLayout.VERTICAL);

}

}

```

以上就是 Android 高仿 QQ 及微信底部菜单的几种实现方式。通过使用 `DrawerLayout`、`CoordinatorLayout` 或自定义布局,我们可以轻松地实现这些应用的风格。

微信框架qq底部导航菜单

版权声明:除非特别标注,否则均为网络文章,侵权请联系站长删除。

上一篇 超详细 企业微信推送(所有东西都可推送)

下一篇 ?UI自动化工具轻松实现微信消息收发?朋友圈爬取??