맞춤 UI 위젯에 LayerDrawable
을 사용하려고합니다. 다른 레이어와 다른 경계로 그려지지만 작동하지 않는 것 같습니다. 기본적으로, 내 코드는 다음을 수행합니다android는 레이어 드로잉 가능 레이어 하나에 테두리를 설정합니다.
int left, top, right, bottom;
/*... do some math ... */
Drawable d = mDrawable.findDrawableByLayerId(R.id.some_specific_layer);
d.setBounds(left, top, right, bottom);
한편, XML은 다음과 같습니다
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<solid android:color="#ff999999" />
</shape>
</item>
<item
android:id="@id/some_specific_layer"
android:drawable="@drawable/some_drawable"/>
을 이상적으로 나는 회색 전시의 양, 회색 사각형을 통해 some_drawable 볼 것이다 bounds 계산의 결과에 따라 뒤에서. 그러나 나는 회색 레이어를 전혀 보지 못했습니다. 경계가 어떻게 든 설정되기 때문에 나타나는 것 같습니다.
상부 이미지 I를 달성하기 위해 원하는이다 : 여기 EDIT
예상 결과에 비해 소정의 시각의 그레이는 제 1 층에 대응하고 그레디언트는 미리 정의 된 id
을 갖는 제 2 층에 대응한다. 실제 결과에는 회색이 표시되지 않습니다.
다른 레이어에 영향을주지 않고 LayerDrawable
의 한 레이어의 경계를 설정할 수있는 사람은 누구입니까?
, 코드 샘플을 추가하거나 문제에 대한 해결책을 설명해주십시오 접근 가능 –
불행히도 나는 토론의 세부 사항이나 내가 결국 해결 한 해결책을 상기하지 않는다. 배경 이미지를 사용하거나 Drawable을 Canvas에서 직접 그렸습니다. – Karakuri