0

私は実際にAndroid用のアプリをコーディングしていますが、何かをするために助けが必要です. この画像で一種のポップアップ メッセージを表示する必要があります: http://img716.imageshack.us/img716/9331/postitz.png。この画像には 2 つの TextView が必要です。そのうちの 1 つはタイトルで、もう 1 つはメッセージです。

独自のレイアウト、独自のスタイルで Dialog のようないくつかのオプションを試しましたが、画像は TextViews のコンテンツをラップするのではなく、すべての画面を埋めます。私も新しいアクティビティでそれをやろうとしましたが、同じように発生し、画像がすべての画面を埋めます。

私の実際のレイアウトはこれです:

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center_vertical"
        android:background="@android:color/white">
    <LinearLayout
        android:id="@+id/img_postit"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:background="@drawable/postit"
        android:orientation="vertical">
        <TextView 
            android:id="@+id/note_titulo"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:padding="30dp"/>

        <TextView 
            android:id="@+id/note_descr"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:padding="30dp"/>
    </LinearLayout>
    </LinearLayout>

しかし、私はさまざまな組み合わせ、RelativeLayout、FrameLayout を試しましたが、これを行うための解決策が見つかりません。

それを解決する方法の任意のアイデア?.

全てに感謝。

4

3 に答える 3

1

ダイアログを拡張する独自のクラスを作成します。次のようなレイアウトを使用します。私は自分のアプリの 1 つでこれを使用し、ダイアログ ウィンドウはボタンの周りにラップされています。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/background"
android:orientation="vertical" >

<RelativeLayout
    android:id="@+id/ll2"
    android:layout_width="fill_parent"
    android:layout_height="70dp"
    android:layout_below="@+id/ll1"
    android:gravity="left"
    android:orientation="horizontal"
    android:paddingBottom="5dp" >

    <RadioButton
        android:id="@+id/start"
        android:layout_width="70dp"
        android:layout_height="70dp"
        android:layout_alignParentBottom="true"
        android:layout_toLeftOf="@+id/stop"
        android:background="@drawable/start_on"
        android:button="@android:color/transparent"
        android:checked="true" />

    <RadioButton
        android:id="@+id/stop"
        android:layout_width="70dp"
        android:layout_height="70dp"
        android:layout_alignParentBottom="true"
        android:layout_centerInParent="true"
        android:layout_marginLeft="50dp"
        android:layout_marginRight="50dp"
        android:background="@drawable/stop_off"
        android:button="@android:color/transparent" />

    <RadioButton
        android:id="@+id/restart"
        android:layout_width="70dp"
        android:layout_height="70dp"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/stop"
        android:background="@drawable/restart_on"
        android:button="@android:color/transparent" />
</RelativeLayout>

<RelativeLayout
    android:id="@+id/lltext"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/detail_credit"
    android:layout_below="@+id/ll2"
    android:layout_marginBottom="15dp"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/startText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@+id/stopText"
        android:text="@string/start_server_icon"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/white"
        android:textSize="12sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/stopText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginLeft="40dp"
        android:layout_marginRight="40dp"
        android:text="@string/stop_server_icon"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/white"
        android:textSize="12sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/restartText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/stopText"
        android:text="@string/restart_server_icon"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/white"
        android:textSize="12sp"
        android:textStyle="bold" />
</RelativeLayout>

<Button
    android:id="@+id/dialogButtonOK"
    android:layout_width="wrap_content"
    android:layout_height="50dp"
    android:layout_below="@+id/lltext"
    android:layout_centerHorizontal="true"
    android:text="OK" />
 </RelativeLayout>
于 2012-10-26T16:10:24.460 に答える
1

あなたは新しい活動として使ったと言いました。android:theme="@android:style/Theme.Dialogマニフェスト ファイルで使用 しましたか?

そして、画像がポップアップとして機能するのに適しているように、画像が少し小さいことを確認してください..ダイアログを使用した場合、正確に何が問題なのですか? ダイアログがポップアップとして表示されませんか? (画像が大きいので、画面全体に表示されると思います)

于 2012-10-26T16:41:07.610 に答える
0
final Dialog dialog_my = new Dialog(FIRST.this,
                    android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
            dialog_my.setContentView(R.layout.about_us); //<PUT YOUR LAYOUT ID HERE>
            TextView date = (TextView) dialog_my.findViewById(R.id.date);

            TextView thought = (TextView) dialog_my.findViewById(R.id.thought);

            TextView ok = (TextView) dialog_my.findViewById(R.id.ok);
            TextView link = (TextView) dialog_my.findViewById(R.id.link);
            TextView contact = (TextView) dialog_my.findViewById(R.id.contact);
            WindowManager.LayoutParams lp = dialog_my.getWindow().getAttributes();
            lp.dimAmount = 0.0f;
            dialog_my.getWindow().setAttributes(lp);
            dialog_my.getWindow().addFlags(
                    WindowManager.LayoutParams.FLAG_DIM_BEHIND);
            dialog_my.show();
于 2012-10-29T10:12:15.803 に答える