Drawable 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다.
[Android.Runtime.Register("android/graphics/drawable/Drawable", DoNotGenerateAcw=true)]
public abstract class Drawable : Java.Lang.Object
[<Android.Runtime.Register("android/graphics/drawable/Drawable", DoNotGenerateAcw=true)>]
type Drawable = class
inherit Object
- 상속
- 파생
- 특성
설명
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. 대부분의 경우 화면에 항목을 그리기 위해 검색된 리소스 유형으로 Drawable을 처리합니다. Drawable 클래스는 다양한 형식을 사용할 수 있는 기본 시각적 리소스를 처리하기 위한 일반 API를 제공합니다. android.view.View
드로블과 달리 Drawable에는 이벤트를 받거나 사용자와 상호 작용할 수 있는 기능이 없습니다.
간단한 그리기 외에도 Drawable은 클라이언트가 그리는 것과 상호 작용할 수 있는 다양한 제네릭 메커니즘을 제공합니다.
<ul><li> #setBounds
메서드 <var>을 호출하여 Drawable이 그려지는 위치와 그 위치를 알려야<> 합니다. 모든 드로블은 요청된 크기를 준수해야 하며, 종종 단순히 이미지 크기를 조정해야 합니다. 클라이언트는 및 메서드를 사용하여 일부 Drawable의 #getIntrinsicHeight
#getIntrinsicWidth
기본 크기를 찾을 수 있습니다.
<li> 메서드는 #getPadding
내부에 배치된 콘텐츠를 프레임하는 방법에 대한 일부 Drawables 정보에서 반환할 수 있습니다. 예를 들어 단추 위젯의 프레임이 되도록 의도된 Drawable은 레이블을 자체 내부에 올바르게 배치하는 안쪽 여백을 반환해야 합니다.
<li> 메서드 #setState
를 사용하면 클라이언트가 그리는 상태(예: "focused", "selected" 등)를 Drawable에 알릴 수 있습니다. 일부 드로블은 선택한 상태에 따라 이미지를 수정할 수 있습니다.
<li> 메서드 #setLevel
를 사용하면 클라이언트가 배터리 수준 또는 진행률 수준과 같이 Drawable이 표시되는 것을 수정할 수 있는 단일 연속 컨트롤러를 제공할 수 있습니다. 일부 드로블은 현재 수준에 따라 이미지를 수정할 수 있습니다.
<li> A Drawable은 인터페이스를 통해 클라이언트로 다시 호출하여 애니메이션을 Callback
수행할 수 있습니다. 모든 클라이언트는 애니메이션이 작동할 수 있도록 (통해 #setCallback
) 이 인터페이스를 지원해야 합니다. 이 작업을 수행하는 간단한 방법은 다음과 같은 android.view.View#setBackground(Drawable)
android.widget.ImageView
시스템 시설을 사용하는 것입니다. </ul>
일반적으로 애플리케이션에 표시되지 않지만 Drawable은 다음과 같은 다양한 형식을 사용할 수 있습니다.
<ul><li><b>Bitmap</b>: 가장 간단한 그리기 가능, PNG 또는 JPEG 이미지입니다. <li><b>Nine Patch</b>: PNG 형식으로 확장하면 PNG 형식을 확장하여 확장하여 내부에 배치하는 방법에 대한 정보를 지정할 수 있습니다. <li><b>Vector</b>: XML 파일에 연결된 색 정보와 함께 점, 선 및 곡선 집합으로 정의된 그리기 가능 요소입니다. 이러한 유형의 드로블은 디스플레이 품질 손실 없이 크기를 조정할 수 있습니다. <li><b>Shape</b>: 원시 비트맵 대신 간단한 그리기 명령을 포함하므로 경우에 따라 크기를 조정할 수 있습니다. <li><b>Layers</b>: 여러 기본 드로블을 서로 위에 그리는 복합 그리기 가능 요소입니다. <li><b>States</b>: 해당 상태에 따라 드로블 집합 중 하나를 선택하는 복합 그리기 가능 요소입니다. <li><b>Levels</b>: 해당 수준에 따라 드로블 집합 중 하나를 선택하는 복합 그리기 가능 요소입니다. <li><b>Scale</b>: 단일 자식 드로블이 있는 복합 그리기 가능으로, 전체 크기는 현재 수준에 따라 수정됩니다. </ul>
"Custom"><h3>사용자 지정 드로블/<h3>
Android의 모든 버전을 사용하면 프레임워크에서 제공하는 그리기 가능 클래스 대신 런타임에 Drawable 클래스를 확장 및 사용할 수 있습니다. 부터는 XML에서 android.os.Build.VERSION_CODES#N API 24
사용자 지정 드로블 클래스를 사용할 수도 있습니다.
<strong>Note:</strong> Custom drawable 클래스는 애플리케이션 패키지 내에서만 액세스할 수 있습니다. 다른 애플리케이션은 로드할 수 없습니다.
최소한 사용자 지정 그리기 가능 클래스는 Drawable에서 추상 메서드를 구현해야 하며 콘텐츠를 그리기 위해 메서드를 재정의 Drawable#draw(Canvas)
해야 합니다.
사용자 지정 drawables 클래스는 여러 가지 방법으로 <XML에서 사용할 수 있습니다. ul><li> 정규화된 클래스 이름을 XML 요소 이름으로 사용합니다. 이 메서드의 경우 사용자 지정 그리기 가능 클래스는 공용 최상위 클래스여야 합니다.
<com.myapp.MyCustomDrawable xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#ffff0000" />
</li li><> em>drawable</em>을 XML 요소 이름으로 사용하고 <em>class</em> 특성에서 <정규화된 클래스 이름을 지정합니다. 이 메서드는 공용 최상위 클래스와 공용 정적 내부 클래스 모두에 사용할 수 있습니다.
<drawable xmlns:android="http://schemas.android.com/apk/res/android"
class="com.myapp.MyTopLevelClass$InnerCustomDrawable"
android:color="#ffff0000" />
</li></ul>
<div class="special reference"><h3>Developer Guides</h3>
드로블을 사용하는 방법에 대한 자세한 내용은 Canvas 및 Drawables 개발자 가이드를 참조하세요. 그리기 가능한 리소스(코드에서 로드할 수 있는 XML 또는 비트맵 파일)를 만드는 방법에 대한 자세한 내용과 예제는 그리기 가능한 리소스 문서를 참조하세요.
</div>
에 대한 android.graphics.drawable.Drawable
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.
생성자
Drawable() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
Drawable(IntPtr, JniHandleOwnership) |
JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다. |
속성
Alpha |
그리기 가능 항목의 현재 알파 값을 가져옵니다. |
AutoMirrored |
레이아웃 방향이 RTL 오른쪽에서 왼쪽일 때 이 Drawable이 자동으로 미러링되는지를 알려줍니다. -또는- 레이아웃 방향이 RTL(오른쪽에서 왼쪽)일 때 이 Drawable이 자동으로 미러링되는지 여부를 설정합니다. |
Bounds |
드로블의 범위 Rect를 반환합니다. -또는- Drawable에 대한 경계 사각형을 지정합니다. |
Callback |
이 Drawable에 연결된 현재 |
ChangingConfigurations |
이 그리기 가능 항목이 변경될 수 있는 구성 매개 변수의 마스크를 반환하여 다시 만들어야 합니다. -또는- 이 그리기 가능 항목이 변경될 수 있는 구성 매개 변수의 마스크를 설정하여 다시 만들어야 합니다. |
Class |
이 |
ColorFilter |
현재 색 필터를 반환하거나 |
Current |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
DirtyBounds |
드로블의 더티 경계 Rect를 반환합니다. |
Handle |
기본 Android 인스턴스에 대한 핸들입니다. (다음에서 상속됨 Object) |
HasFocusStateSpecified |
이 그리기 가능 항목에 명시적으로 지정하는 |
IntrinsicHeight |
그리기 개체의 내장 높이를 반환합니다. |
IntrinsicWidth |
그리기 개체의 내장 너비를 반환합니다. |
IsFilterBitmap |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
IsProjected |
이 그리기 가능 요청이 프로젝션을 요청하는지 여부입니다. |
IsStateful |
이 그리기 가능 항목이 상태에 따라 모양을 변경할지 여부를 나타냅니다. |
IsVisible |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
JniIdentityHashCode |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
JniPeerMembers |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
LayoutDirection |
이 Drawable의 확인된 레이아웃 방향을 반환합니다. |
Level |
현재 수준을 검색합니다. |
MinimumHeight |
이 Drawable에서 제안하는 최소 높이를 반환합니다. |
MinimumWidth |
이 Drawable에서 제안하는 최소 너비를 반환합니다. |
Opacity |
이 Drawable의 불투명도/투명도를 반환합니다. |
OpticalInsets |
레이아웃 중에 맞춤 작업에 사용하기 위해 이 Drawable에서 제안하는 레이아웃 인셋을 초기화합니다. |
PeerReference |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
ThresholdClass |
이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. |
ThresholdType |
이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. |
TransparentRegion |
완전히 투명한 Drawable 부분을 나타내는 영역을 반환합니다. |
메서드
ApplyTheme(Resources+Theme) |
이 Drawable 및 해당 자식에 지정된 테마를 적용합니다. |
CanApplyTheme() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
ClearColorFilter() |
이 그리기 가능한 색 필터를 제거합니다. |
Clone() |
이 개체의 복사본을 만들고 반환합니다. (다음에서 상속됨 Object) |
CopyBounds() |
새 Rect에서 그리기 가능 범위의 복사본을 반환합니다. |
CopyBounds(Rect) |
지정된 Rect(호출자가 할당)에 있는 그리기 가능 범위의 복사본을 반환합니다. |
CreateFromPath(String) |
파일 경로 이름에서 drawable을 만듭니다. |
CreateFromPathAsync(String) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
CreateFromResourceStream(Resources, TypedValue, Stream, String, BitmapFactory+Options) |
지정된 리소스와 값을 사용하여 밀도 정보를 확인하여 입력 스트림에서 그리기 가능 항목을 만듭니다. |
CreateFromResourceStream(Resources, TypedValue, Stream, String) |
지정된 리소스와 값을 사용하여 밀도 정보를 확인하여 입력 스트림에서 그리기 가능 항목을 만듭니다. |
CreateFromResourceStreamAsync(Resources, TypedValue, Stream, String, BitmapFactory+Options) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
CreateFromResourceStreamAsync(Resources, TypedValue, Stream, String) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
CreateFromStream(Stream, String) |
입력 스트림에서 그리기 가능 항목 만들기 |
CreateFromStreamAsync(Stream, String) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
CreateFromXml(Resources, XmlReader, Resources+Theme) |
XML 문서에서 그리기 가능 항목을 만듭니다. |
CreateFromXml(Resources, XmlReader) |
XML 문서에서 그리기 가능 항목을 만듭니다. |
CreateFromXmlAsync(Resources, XmlReader, Resources+Theme) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
CreateFromXmlAsync(Resources, XmlReader) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
CreateFromXmlInner(Resources, XmlReader, IAttributeSet, Resources+Theme) |
XML 문서 내부에서 만듭니다. |
CreateFromXmlInner(Resources, XmlReader, IAttributeSet) |
XML 문서 내부에서 만듭니다. |
Dispose() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
Dispose(Boolean) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
Draw(Canvas) |
알파(setAlpha를 통해 설정) 및 색 필터(setColorFilter를 통해 설정)와 같은 선택적 효과를 기준으로 해당 범위(setBounds를 통해 설정)를 그립니다. |
Equals(Object) |
다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다. (다음에서 상속됨 Object) |
GetConstantState() |
|
GetHashCode() |
개체에 대한 해시 코드 값을 반환합니다. (다음에서 상속됨 Object) |
GetHotspotBounds(Rect) |
|
GetOutline(Outline) |
그리기 영역을 정의하는 개요를 채우기 위해 그리기를 가져오기 위해 호출됩니다. |
GetPadding(Rect) |
드로블의 범위 내에 콘텐츠를 배치하기 위해 이 Drawable에서 제안하는 세트의 안쪽 여백으로 돌아갑니다. |
GetState() |
현재 상태를 기본 상태(예: 등 |
Inflate(Resources, XmlReader, IAttributeSet, Resources+Theme) |
XML 리소스에서 이 Drawable을 확장합니다. |
Inflate(Resources, XmlReader, IAttributeSet) |
XML 리소스에서 이 Drawable을 확장합니다. |
InflateAsync(Resources, XmlReader, IAttributeSet, Resources+Theme) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
InflateAsync(Resources, XmlReader, IAttributeSet) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
InvalidateSelf() |
현재 |
JavaFinalize() |
가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다. (다음에서 상속됨 Object) |
JumpToCurrentState() |
이 Drawable이 상태 간 전환 애니메이션을 수행하는 경우 즉시 현재 상태로 이동하고 활성 애니메이션을 건너뛰도록 요청합니다. |
Mutate() |
이 그리기 가능 변경 가능으로 만듭니다. |
Notify() |
이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다. (다음에서 상속됨 Object) |
NotifyAll() |
이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다. (다음에서 상속됨 Object) |
OnBoundsChange(Rect) |
경계에 따라 달라지는 경우 모양을 변경하려면 하위 클래스에서 이를 재정의합니다. |
OnLayoutDirectionChanged(Int32) |
그리기 개체의 확인된 레이아웃 방향이 변경될 때 호출됩니다. |
OnLevelChange(Int32) |
수준에 따라 달라지는 경우 모양을 변경하려면 하위 클래스에서 이를 재정의합니다. |
OnStateChange(Int32[]) |
지정된 상태를 인식하는 경우 모양을 변경하려면 하위 클래스에서 이를 재정의합니다. |
ResolveOpacity(Int32, Int32) |
두 원본 불투명도에 적절한 불투명도 값을 반환합니다. |
ScheduleSelf(Action, Int64) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
ScheduleSelf(IRunnable, Int64) |
현재 |
SetAlpha(Int32) |
그리기 가능 항목의 알파 값을 지정합니다. |
SetBounds(Int32, Int32, Int32, Int32) |
Drawable에 대한 경계 사각형을 지정합니다. |
SetCallback(Drawable+ICallback) |
|
SetColorFilter(Color, PorterDuff+Mode) |
색 및 포터-더프 모드를 이 그리기 가능 색 필터로 지정합니다. |
SetColorFilter(ColorFilter) |
그리기 가능 항목에 대한 선택적 색 필터를 지정합니다. |
SetDither(Boolean) |
색상 구성 요소당 8비트 미만의 디바이스에 그릴 때 그리기 가능 항목이 해당 색을 디더링하도록 true로 설정합니다. |
SetFilterBitmap(Boolean) |
크기를 조정하거나 회전할 때 양방향 샘플링을 사용하여 비트맵을 그리기 가능한 필터로 설정하려면 true로 설정합니다. |
SetHandle(IntPtr, JniHandleOwnership) |
Handle 속성을 설정합니다. (다음에서 상속됨 Object) |
SetHotspot(Single, Single) |
그리기 파일 내에서 핫스팟의 위치를 지정합니다. |
SetHotspotBounds(Int32, Int32, Int32, Int32) |
핫스팟이 그리기 가능한 범위와 달라야 하는 경우 핫스팟이 제한되는 범위를 설정합니다. |
SetLayoutDirection(LayoutDirection) |
이 그리기 가능의 레이아웃 방향을 설정합니다. |
SetLevel(Int32) |
그리기 가능한 수준을 지정합니다. |
SetState(Int32[]) |
그리기의 상태 집합을 지정합니다. |
SetTint(Int32) |
이 그리기 가능 항목의 색조 색을 지정합니다. |
SetTintBlendMode(BlendMode) |
이 그리기에 대한 색조 혼합 모드를 지정합니다. |
SetTintList(ColorStateList) |
이 그리기 가능 항목의 색조 색을 색 상태 목록으로 지정합니다. |
SetTintMode(PorterDuff+Mode) |
이 그리기에 대한 색조 혼합 모드를 지정합니다. |
SetVisible(Boolean, Boolean) |
이 그리기 가능 개체가 표시되는지 여부를 설정합니다. |
ToArray<T>() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
ToString() |
개체의 문자열 표현을 반환합니다. (다음에서 상속됨 Object) |
UnregisterFromRuntime() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
UnscheduleSelf(Action) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
UnscheduleSelf(IRunnable) |
현재 |
Wait() |
현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 <><중단/종료>합니다.> (다음에서 상속됨 Object) |
Wait(Int64, Int32) |
현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다. (다음에서 상속됨 Object) |
Wait(Int64) |
현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다. (다음에서 상속됨 Object) |
명시적 인터페이스 구현
IJavaPeerable.Disposed() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
IJavaPeerable.Finalized() |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
IJavaPeerable.JniManagedPeerState |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. (다음에서 상속됨 Object) |
확장 메서드
JavaCast<TResult>(IJavaObject) |
Android 런타임 확인 형식 변환을 수행합니다. |
JavaCast<TResult>(IJavaObject) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |
GetJniTypeName(IJavaPeerable) |
그리기는 "그릴 수 있는 것"에 대한 일반적인 추상화입니다. |