2016-07-17 9 views
0

はのは、私がこのような構造を持つXMLがあるとしましょう:「デザイン」や「プレビュー」タブで相対レイアウトをすばやく切り替える方法はありますか?

FrameLayout 
    RelativeLayout (on whole screen) 
     Buttons, Texts etc. 
    RelativeLayout (on whole screen) 
     Buttons, Texts etc. 

私はいつも私が作成した最初の相対的なレイアウトを参照してください。私はもう一方を見えなくすることでそれらの間を切り替えてきましたが、2つ以上のレイアウトがある場合は混乱です。 Androidにこの機能を提供するオプションはありますか?つまり、1つのXMLで異なるレイアウトを切り替えることですか?

+0

フラグメント? FragmentTransactionを使用してレイアウト全体を置き換えます。 –

+0

コードワイズではありません。デザインタブでレイアウトを切り替えるだけです。 –

+0

Shiftキーを2回タップします。開くXMLファイルの名前を入力しますか? –

答えて

1

アンドロイドでメーカー彼らは両方の画面を充填している場合は、適切に同時に両方RelativeLayoutsを表示することはできません。 RelativeLayoutを含む2つのXMLを使用して、ニーズに合わせて設計することをお勧めします。その後、簡単に1つのXMLにマージすることができます。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"> 
    <include android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/your_first_relativelayout" /> 
    <include android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/your_second_relativelayout" /> 
</FrameLayout> 

あなたがprogrammaticlyレイアウトを非表示にしたり、表示したい場合、あなたはこのように、あなたのRelativeLayouts両方に一意のIDを割り当てる必要があります:たとえば

your_first_relativelayout.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/your_relative_layout_id" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
     .... 
    </RelativeLayout> 

へそれを示す:

RelativeLayout rl = (RelativeLayout) findViewById(R.id.your_relative_layout_id); 
if (rl != null) { 
    rl.setVisibility(View.VISIBLE); 
} 

そしてそれを隠す:

rl.setVisibility(View.GONE); 
0

オプションがないと思います。
2つのレイアウトファイルを使用し、それらをエディタでswithしてください。
(そして、2つのレイアウトファイルは<include>タグを使用して、元のレイアウトファイルを形成含まれます)

関連する問題