安卓代码实现:功能描述:点击“菜单”按钮出现菜单,点击菜单“男歌手”、“女歌手”、“组合”出现子菜单,点击子菜单项会提示信息,如“你选择的组合是TFBOYS”。
时间: 2023-09-26 20:04:52 浏览: 63
好的,以下是一个简单的 Android 实现示例,您可以参考:
首先,在您的 layout 目录下创建一个名为 activity_main.xml 的 XML 布局文件,包含以下代码:
```xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"
tools:context=".MainActivity">
<Button
android:id="@+id/menu_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="菜单" />
<LinearLayout
android:id="@+id/menu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<TextView
android:id="@+id/menu_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="选择一个菜单项" />
<Button
android:id="@+id/male_singer_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="男歌手" />
<Button
android:id="@+id/female_singer_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="女歌手" />
<Button
android:id="@+id/group_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="组合" />
</LinearLayout>
<LinearLayout
android:id="@+id/sub_menu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<TextView
android:id="@+id/sub_menu_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="选择一个子菜单项" />
<Button
android:id="@+id/tfboys_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TFBOYS" />
<Button
android:id="@+id/snh48_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="SNH48" />
<Button
android:id="@+id/gnz48_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="GNZ48" />
</LinearLayout>
</RelativeLayout>
```
接下来,在您的 MainActivity.java 中添加以下代码:
```java
public class MainActivity extends AppCompatActivity {
private Button menuBtn;
private LinearLayout menuLayout;
private TextView menuTitle;
private Button maleSingerBtn;
private Button femaleSingerBtn;
private Button groupBtn;
private LinearLayout subMenuLayout;
private TextView subMenuTitle;
private Button tfboysBtn;
private Button snh48Btn;
private Button gnz48Btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取 UI 控件
menuBtn = findViewById(R.id.menu_btn);
menuLayout = findViewById(R.id.menu);
menuTitle = findViewById(R.id.menu_title);
maleSingerBtn = findViewById(R.id.male_singer_btn);
femaleSingerBtn = findViewById(R.id.female_singer_btn);
groupBtn = findViewById(R.id.group_btn);
subMenuLayout = findViewById(R.id.sub_menu);
subMenuTitle = findViewById(R.id.sub_menu_title);
tfboysBtn = findViewById(R.id.tfboys_btn);
snh48Btn = findViewById(R.id.snh48_btn);
gnz48Btn = findViewById(R.id.gnz48_btn);
// 点击菜单按钮时显示菜单
menuBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (menuLayout.getVisibility() == View.GONE) {
menuLayout.setVisibility(View.VISIBLE);
} else {
menuLayout.setVisibility(View.GONE);
}
}
});
// 点击菜单项时显示对应的子菜单
maleSingerBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
menuLayout.setVisibility(View.GONE);
subMenuLayout.setVisibility(View.VISIBLE);
subMenuTitle.setText("你选择的男歌手是:");
tfboysBtn.setVisibility(View.VISIBLE);
snh48Btn.setVisibility(View.GONE);
gnz48Btn.setVisibility(View.GONE);
}
});
femaleSingerBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
menuLayout.setVisibility(View.GONE);
subMenuLayout.setVisibility(View.VISIBLE);
subMenuTitle.setText("你选择的女歌手是:");
tfboysBtn.setVisibility(View.GONE);
snh48Btn.setVisibility(View.VISIBLE);
gnz48Btn.setVisibility(View.VISIBLE);
}
});
groupBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
menuLayout.setVisibility(View.GONE);
subMenuLayout.setVisibility(View.VISIBLE);
subMenuTitle.setText("你选择的组合是:");
tfboysBtn.setVisibility(View.VISIBLE);
snh48Btn.setVisibility(View.VISIBLE);
gnz48Btn.setVisibility(View.VISIBLE);
}
});
// 点击子菜单项时显示提示信息
tfboysBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "你选择的组合是TFBOYS", Toast.LENGTH_SHORT).show();
}
});
snh48Btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "你选择的组合是SNH48", Toast.LENGTH_SHORT).show();
}
});
gnz48Btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "你选择的组合是GNZ48", Toast.LENGTH_SHORT).show();
}
});
}
}
```
这个示例实现了一个简单的 Android 应用,包含一个菜单按钮和两个菜单。当用户点击菜单按钮时,弹出包含“男歌手”、“女歌手”、“组合”的菜单。当用户选择其中一个菜单项时,弹出对应的子菜单,例如,如果用户选择“组合”,则弹出包含“TFBOYS”、“SNH48”、“GNZ48”的子菜单。当用户选择其中一个子菜单项时,弹出提示信息,告诉用户他们选择了哪个选项。