2014-02-24 3 views
0

선형 레이아웃 클래스를 확장하고 해당 속성 중 일부를 변경하려고합니다. 내가 바꾸고 싶은 속성 중 하나는 배경입니다. LinearLayout 확장

속성 배경

뭔가로 설정 될 것이며, 이러한 배경 뷰의 높이보다 짧은 경우, 나는 그것을 수직으로 반복해야합니다. 생성자에서 내가 내의 getBackground를 사용하는 경우

은() 내가보기에 설정된 배경을 얻을. 그러나 타일을 붙이려고하면 한 번 멋지게 보이지만 반복해야하는 모든 위치는 단지 얼룩이 남습니다.

어떻게 내가 대신 배경 이미지 뷰의 ResourceID를 배경합니까, 그래서없이 작업 할 수 있습니다 "슈퍼." 메서드가 먼저 호출되고 있습니까? 있는 LinearLayout를 확장하는 유일한 이유는 반복 배경 또는 반복되지 않는 배경을 설정하는 경우

+0

가능한 샘플 코드이므로 일부를 살펴보고 제안 할 수 있습니다. –

+0

당신이있는 LinearLayout를 확장해야 해달라고의 AttributeSet 있었던 파라미터 – Blackbelt

+0

내부 ID를 찾을 수 있습니다, 당신이 필요로하는 것은 사용자 정의 그리기 만드는 것입니다 : 클래스 RepeatDrawable 내가 이러한 클래스를 만드는 방법에 대해 갈 것이라고 어떻게 드로어 블 – pskink

답변

0

다음의 LinearLayout을 extende 할 필요가 없습니다. 당신의 '상태'당신은 당신의 선택에있는 LinearLayout의 배경을 설정할 수에 따라

<?xml version="1.0" encoding="utf-8"?> 
<bitmap 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:tileMode="repeat" 
    android:src="@drawable/your_drawable"/> 

:

당신은 그릴 수 XML 파일을 사용하여 excisting 드로어 블에서 반복되는 배경을 만들 수 있습니다.

+0

) (무승부 방법을 도면 물건을, 그리고 수평, 내 배경 폭 540 및 719 (동일의 2 개의 다른 이미지)의 것 같습니다 그리고 나는 스크린의 오른쪽, 이미지의 반복, 내가 원하지 않는 것을 얻는다. 나는 이미지를 수평으로 늘리고 수직으로 타일링하기를 원한다. –

+0

@ LenaBru Drawable을 확장하면 draw() 메서드 – pskink

+0

에서 원하는 것을 무엇이든 할 수 있지만 내 draw 메서드에서는 무엇을 쓸 수 있습니까? –