我想尝试获得类似于应用程序底部标签的漂亮按钮,但我想知道是否有这样的内置按钮:
它将使导航更好,并且如果它们是,开发更容易和更快。
我想尝试获得类似于应用程序底部标签的漂亮按钮,但我想知道是否有这样的内置按钮:
它将使导航更好,并且如果它们是,开发更容易和更快。
您的示例屏幕截图显示了一个大部分未动过的库存 Android 2.2 启动器。由于它是开源的,您可以看看它是如何完成的。这是它使用的布局文件。
请注意底部的 RelativeLayout 包含三个“热座”按钮。他们每个人都使用自定义样式来获取外观,这些样式在此处定义。
您在图片中显示的是 HTC Sense Launcher。它是一个附加组件,而不是核心 Android 操作系统的一部分。
顺便说一句,像这样自定义透明按钮很容易。如果您需要任何帮助,请告诉我。
更新:
使用此示例创建一个自定义对话框,它不是模态的,并且是浮动和透明的。
dialog = new Dialog(activityRequestingProgressDialog);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.progress_upload);
progressBar = (ProgressBar) dialog.findViewById(R.id.progressBar);
progressText = (TextView) dialog.findViewById(R.id.progressText);
progressText.setText("0 %");
progressText.setTextSize(18);
Button buttonCancel = (Button) dialog.findViewById(R.id.btnCancel);
buttonCancel.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
cancelProgressDialog();
}
});
Window window = dialog.getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
window.setGravity(Gravity.BOTTOM);
dialog.show();
对话框布局是:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/progressDialog"
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_centerVertical="true">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textSize="18sp"
android:padding="10dp"
android:text="@string/progress_title"/>
<LinearLayout android:id="@+id/progressDialog"
android:orientation="horizontal"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:padding="10dp"
android:layout_centerVertical="true">
<ProgressBar android:id="@+id/progressBar"
android:layout_width="150dp"
android:layout_height="34dp"
android:paddingRight="10dp"
android:max="100"
android:progress="0"
android:fadingEdge="vertical"
style="?android:attr/progressBarStyleHorizontal"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:id="@+id/progressText"
android:paddingRight="10dp"/>
<Button android:id="@+id/btnCancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="10dip"
android:text="@string/button_options_text"
android:textColor="@color/button_text_grey"
android:drawableTop="@drawable/button_options"
android:drawablePadding="-5dip"
android:background="@null"/>
</LinearLayout>
</LinearLayout>
这是一个带有进度条、文本和取消按钮的进度对话框示例。您可以轻松地将其更改为三个按钮。请注意,按钮是透明的,带有图标和文本。