1

은 '나는 RelativeLayout의안드로이드 상대 레이아웃 배경 충돌 잘

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:clickable="true" 
    android:background="@drawable/my_shape_normal" 
    android:onClick="startTestTillError"> 

및 my_shape_normal이 예외가 발생로드에

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="rectangle"> 
<gradient 
    android:startColor="#FFFFFF00" 
    android:endColor="#80FFFFFF" 
    android:angle="120"/> 
<padding android:left="7dp" 
    android:top="7dp" 
    android:right="7dp" 
    android:bottom="7dp" /> 
<corners android:radius="8dp" /> 
</shape> 

로 정의되어 있습니다. "android : background"를 제거하면 모든 것이 완벽하게 작동합니다. my_shape_normal의 문제점은 무엇입니까?

+0

응용 프로그램이 충돌하는 경우 항상 LogCat 오류를 포함하는 것이 가장 좋습니다. – Sam

답변

5

나는 & 내 로그 캣 읽기 당신의 XML을 붙여 잘라 경우 :

그래서 나는이 요구 사항을 반영하기 위해 형상 XML 업데이트되었습니다
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #6 
    <gradient> tag requires 'angle' attribute to be a multiple of 45 

:

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle" 
    android:padding="7dp" > 

    <gradient 
     android:angle="135" 
     android:endColor="#80FFFFFF" 
     android:startColor="#FFFFFF00" /> 

    <corners android:radius="8dp" /> 

</shape> 

주의 나 또한 결합 된 동일한 padding 요소를 하나의 속성으로 shape.

+1

내 하루를 저장했습니다. 고마워요! – Nick