0

アプリの下部にあるタブのように機能する素敵なボタンを取得したいのですが、次のようなボタンが組み込まれているかどうか疑問に思っています。

ナビゲーションが改善され、開発がはるかに簡単かつ迅速になります。

4

2 に答える 2

2

あなたの例のスクリーンショットは、ほとんど手付かずの Android 2.2 ランチャーを示しています。オープンソースなので、どのように行われているかを見ることができます。使用するレイアウトファイルは次のとおりです。

3 つの「ホットシート」ボタンを含む下部の RelativeLayout に注意してください。それぞれカスタム スタイルを使用して外観を取得します。これらのスタイルはここで定義されます。

于 2010-11-19T18:13:39.967 に答える
0

写真に表示されているのはHTCSenseLauncherです。これはアドオンであり、コアAndroidOSの一部ではありません。

ところで、このようなカスタムの透明なボタンを実行するのは簡単です。これについてサポートが必要な場合はお知らせください。

アップデート:

この例を使用して、モーダルではなく、フローティングで透過的なカスタムダイアログを作成します。

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>

これは、進行状況バー、テキスト、キャンセルボタンを備えた進行状況ダイアログの例です。これは簡単に3つのボタンに変更できます。ボタンはアイコンとテキストで透明であることに注意してください。

于 2010-11-19T13:22:23.083 に答える