2012-05-14 13 views
3

私はrelativelayoutの中に相対的なタイミングを持っています。 外側のrelativelayoutには画像であるアンドロイド:背景があります。
インナーには他のイメージがありますが、同じ方法です。
これはすべて表示されません。 視認性を切り替えるボタンがあります。アンドロイド:目に見えないものから目に見えないときに背景画像が初めて表示されない

可視になると、内側の画像が表示されますが、外側の画像は表示されません。
しかし、非表示にしてクリックすると再び表示されます。外側の画像も表示されます。ここで

関連xmlです:

<RelativeLayout 
    android:id="@+id/display_prefs_dialog_layout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:visibility="invisible" > 

    <include 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentRight="true" 
     android:layout_marginBottom="45dp" 
     android:layout_marginRight="50dp" 
     layout="@layout/display_prefs_dialog" > 
    </include> 
</RelativeLayout> 

そして含ま内側:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/display_prefs_dialog" 
    android:layout_width="327dp" 
    android:layout_height="218dp" 
    android:background="@drawable/display_win" > 

    <RelativeLayout 
     android:id="@+id/display_letters_bg" 
     android:layout_width="262dp" 
     android:layout_height="44dp" 
     android:layout_marginLeft="32dp" 
     android:layout_marginTop="38dp" 
     android:background="@drawable/display_letter_frame" > 

をJAVAコード:

final ImageButton btnDisplay = (ImageButton) findViewById(R.id.btnDisplay);   
     final RelativeLayout prefsInnerDialog = (RelativeLayout) findViewById(R.id.display_prefs_dialog);  
     final RelativeLayout prefsDialog = (RelativeLayout) findViewById(R.id.display_prefs_dialog_layout); 


btnDisplay.setOnClickListener(new Button.OnClickListener() 
     { 
      public void onClick(View v) 
      {        
       int visibility = prefsDialog.getVisibility(); 
       if (visibility == View.VISIBLE) 
       { 
        prefsDialog.setVisibility(View.INVISIBLE); 
       } 
       else 
       { 
        prefsDialog.setVisibility(View.VISIBLE); 
       } 
      } 
     }); 
+0

あなたのJavaコードを貼り付けることができます... –

+0

あなたのボタンのOnClickコードも投稿してください – Tarun

+0

prefsInnerDialogの表示を切り替えていませんか? – Tarun

答えて

0

私は、要件の同じ種類で、今日でしたあなたと同じようなことをやって、私のために働いています。 あなたのために同じサンプルコードを投稿すると、あなたを助けるかもしれません..!

Javaファイル:Main.java

public class Main extends Activity { 
    RelativeLayout prefsInnerDialog, prefsDialog; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     prefsInnerDialog = (RelativeLayout) findViewById(R.id.display_prefs_dialog); 
     prefsDialog = (RelativeLayout) findViewById(R.id.display_prefs_dialog_layout); 
    } 
    public void toggleIt(View v) { 
     int visibility = prefsDialog.getVisibility(); 
     if (visibility == View.VISIBLE) { 
      prefsDialog.setVisibility(View.INVISIBLE); 
     } else { 
      prefsDialog.setVisibility(View.VISIBLE); 
     } 
    } 
} 

まずXML:main.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" android:layout_height="fill_parent" 
    android:orientation="vertical" android:id="@+id/linearLayout1"> 
    <Button android:layout_width="wrap_content" android:text="Button" 
     android:id="@+id/button1" android:layout_height="wrap_content" 
     android:onClick="toggleIt"></Button> 
    <RelativeLayout android:id="@+id/display_prefs_dialog_layout" 
     android:layout_width="fill_parent" android:layout_height="fill_parent" 
     android:visibility="invisible"> 
     <include android:layout_width="fill_parent" 
      android:layout_height="fill_parent" layout="@layout/mainsecond"> 
     </include> 
    </RelativeLayout> 
</LinearLayout> 

セカンドXML:mainsecond.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/display_prefs_dialog" android:layout_width="320dp" 
    android:layout_height="480dp" android:background="@drawable/mainbg"> 
    <RelativeLayout android:id="@+id/display_letters_bg" 
     android:layout_centerInParent="true" 
     android:layout_width="250dp" android:layout_height="100dp" 
     android:background="@drawable/databg"> 
    </RelativeLayout> 
</RelativeLayout> 

あなたのコードを見れば、私はJavaコードに何も間違っているように感じる、ちょうどが悪いので問題がある RelativeLayoutの使用法。

+0

あなたの答えをちょうど見た。ありがとう、私はそれを見て、あなたに知らせるでしょう。 –

+0

こんにちは、あなたはあなたの問題を解決することができました! – MKJParekh

+0

実際に私はまだそれを試して使用する時間がなかったが、私はすぐにあなたの答えを承認しなければ、賞金ポイントの半分しか得られないだろうと私は見た。これはおそらく解決策だと私は信じています。ありがとう –

関連する問題