2016-07-16 2 views
-1

나는 제목 TextView, 2 ImageViews, 2 RadioButtons, 2 TextViews이 이미지를 설명하는 팝업을 기각하는 Button와 팝업 레이아웃을 만드는 몇 가지 문제가있다.안드로이드 팝업 레이아웃은

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/myLay" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical"> 


    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <TextView 
      android:id="@+id/txt1" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_above="@+id/img1" 
      android:text="Choose Your Preference:" 
      android:textSize="24sp" 
      android:textStyle="normal|bold" /> 


     <RadioGroup 
      android:id="@+id/myRadioGroup" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checkedButton="@+id/first"> 

      <RadioButton 
       android:id="@+id/first" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" /> 

      <RadioButton 
       android:id="@+id/second" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" /> 

     </RadioGroup> 

     <ImageView 
      android:id="@+id/img1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_above="@+id/txt2" 
      android:layout_weight="1" 
      android:contentDescription="@string/pre" 
      android:scaleType="centerCrop" 
      android:src="@drawable/optionone" /> 

     <TextView 
      android:id="@+id/txt2" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_above="@+id/img2" 
      android:gravity="center_horizontal" 
      android:text="Shrink image and leave borders white." 
      android:textSize="12sp" 
      android:textStyle="normal|bold" /> 

     <ImageView 
      android:id="@+id/img2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_above="@+id/txt3" 
      android:layout_weight="1" 
      android:contentDescription="@string/pre" 
      android:scaleType="centerCrop" 
      android:src="@drawable/optiontwo" /> 

     <TextView 
      android:id="@+id/txt3" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_horizontal" 
      android:text="Change image brightness." 
      android:textSize="12sp" 
      android:textStyle="normal|bold" /> 

     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_horizontal" 
      android:text="Dismiss" 
      android:layout_below="@+id/txt3"/> 
    </LinearLayout> 

</LinearLayout> 

그것은 다음과 같습니다 : 여기 레이아웃입니다 나는 LinearLayout 내부 android:layout_above:""을 사용하고

1. 그러나

description

는, 나는 두 가지 문제가 ,하지만이 방법으로 만 작동하며 RelativeLayout 내부가 아니라 RelativeLayout으로 전환하면 사용할 수 없게됩니다. android:layout_weight=""

2 나는 ImageView "IMG2"의 왼쪽에있는 ImageView "을 img1"의 왼쪽과 "두 번째"RadioButtonRadioButton "첫 번째"얻을 수 없습니다.

감사합니다.

답변

1

RadioButton 클래스는 TextView까지 확장됩니다. 따라서 각각의 옵션 이미지에 별도의 ImageView을 사용하는 대신 RadioButtonandroid:drawable 속성을 사용하여 원하는 위치에 이미지를 표시 할 수 있습니다.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/myLay" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical">  

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <TextView 
      android:id="@+id/txt1" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="Choose Your Preference:" 
      android:textSize="24sp" 
      android:textStyle="normal|bold" /> 


     <RadioGroup 
      android:id="@+id/myRadioGroup" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checkedButton="@+id/first"> 

      <RadioButton 
       android:id="@+id/first" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Shrink image and leave borders white." 
       android:textSize="12sp" 
       android:textStyle="normal|bold" 
       android:drawableBottom="@drawable/optionone" /> 

      <RadioButton 
       android:id="@+id/second" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Change image brightness." 
       android:textSize="12sp" 
       android:textStyle="normal|bold" 
       android:drawableBottom="@drawable/optiontwo" /> 

     </RadioGroup> 

     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_horizontal" 
      android:text="Dismiss" /> 
    </LinearLayout> 

</LinearLayout> 
+0

LinearLayout 내부에서 android : layout_above = ""를 사용하는 것은 어떻습니까? – DAVIDBALAS1

+0

정확합니다. 당신을 돕기 위해'layout_above ='행을 지우지 않고 원본 xml 레이아웃을 복사, 붙여 넣기, 정정 할 때 오류가 발생했습니다. 죄송합니다. 용서해주세요. 나는 * YOUR * 코드의 불쾌한 줄을 제거했습니다. –

+0

괜찮습니다. 방금 실수를했다고 생각했습니다. 죄송합니다. – DAVIDBALAS1