2017-01-18 6 views
0

私はAPIを要求した後に応答を設定します。レスポンスの状況に応じてエラー画面を画面に表示したい。たとえば、インターネット接続に問題がある場合にこの画面を表示したいとします。Androidの状況に応じて異なるレイアウトを表示するにはどうすればよいですか?

internet connection error

layout_connection_error.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/yemek_hata" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
android:gravity="center" 
android:layout_below="@+id/weekCalendar"> 

<ImageView 
    android:layout_width="200dp" 
    android:layout_height="200dp" 
    android:scaleType="fitXY" 
    android:src="@drawable/ic_signal_wifi_off" 
    android:tint="@color/colorGreyLight" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" /> 

<TextView 
    android:text="@string/baglanti_hata" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="10dp" 
    android:id="@+id/textView8" 
android:textAppearance="@android:style/TextAppearance.Material.Caption" 
    android:textSize="20sp" 
    android:textAlignment="center" /> 


</LinearLayout> 

または私は正体不明のエラーが発生した時にこの画面を表示したいです。

exception

layout_unidentified_error.xml私はそれを行うことができますどのように

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/yemek_hata" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
android:gravity="center" 
android:layout_below="@+id/weekCalendar"> 

<ImageView 
    android:layout_width="200dp" 
    android:layout_height="200dp" 
    android:scaleType="fitXY" 
    android:src="@drawable/ic_bug_report" 
    android:tint="@color/colorGreyLight" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" /> 

<TextView 
    android:text="@string/bilinmeyen_hata" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="10dp" 
    android:id="@+id/textView8" 
    android:textAppearance="@android:style/TextAppearance.Material.Caption" 
    android:textSize="20sp" 
    android:textAlignment="center" /> 


    </LinearLayout> 

+0

あなたのアクティビティまたはフラグメントコードを投稿してください – firegloves

答えて

2

同じように見えるので、TextViewのテキストとImageViewのイメージをコードで変更することができます。

textView.setText(R.string.bilinmeyen_hata); 
imageView.setImageResource(R.drawable.ic_bug_report); 
+1

また、TextViewだけを使用して、上部のドロアブルを設定することもできます –

関連する問題