programing

투명 이미지 버튼을 사용하는 방법:안드로이드

topblog 2023. 7. 7. 18:27
반응형

투명 이미지 버튼을 사용하는 방법:안드로이드

<ImageButton android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/media_skip_backward"
android:background="@drawable/transparent"></ImageButton>

이것이 제가 투명한 이미지 버튼을 얻기 위해 시도한 것입니다. 이 버튼들을 서피스 뷰에 배치하기 위해서죠.그러나 이클립스는 xml에 투명선을 포함시키자마자 프로젝트에 오류를 표시합니다.

제발 도와주세요.

배경에 null을 사용해 보십시오...

android:background="@null"

버튼(또는 일반 보기)이 클릭 시 더 이상 강조 표시되지 않으므로 투명 또는 NULL 레이아웃을 사용하지 마십시오.!!!

저도 같은 문제를 겪었고 결국 안드로이드 API에서 문제를 해결할 수 있는 올바른 속성을 찾았습니다.모든 보기에 적용할 수 있습니다.

단추 사양에 이를 사용합니다.

android:background="?android:selectableItemBackground"

투명 색상을 사용할 수도 있습니다.

android:background="@android:color/transparent"

배경 설정"@null"단추를 클릭해도 아무런 효과가 없습니다.이것이 더 나은 선택이 될 것입니다.

style="?android:attr/borderlessButtonStyle"

나중에 알게 된 것은 다음과 같습니다.

android:background="?android:attr/selectableItemBackground"

또한 좋은 해결책입니다.그리고 이 속성을 자신만의 스타일로 상속할 수 있습니다.

런타임에, 당신은 다음 코드를 사용할 수 있습니다.

btn.setBackgroundDrawable(null);

저는 다음과 같은 답변이 허용되어야 한다고 생각합니다. android:background="?attr/selectableItemBackground"

이는 @lory105의 답변과 동일하지만 최대 호환성을 위해 지원 라이브러리를 사용합니다.android:동등한 것은 API > = 11)에만 사용할 수 있습니다.

클릭 애니메이션이 필요한 경우 null 또는 투명을 사용하지 마십시오.향상:

//Rectangular click animation
android:background="?attr/selectableItemBackground"

//Rounded click animation
android:background="?attr/selectableItemBackgroundBorderless"

이 줄을 제거합니다.

android:background="@drawable/transparent">

그리고 당신의 활동 수업 세트에서.

ImageButton btn = (ImageButton)findViewById(R.id.previous);
btn.setAlpha(100);

알파 레벨 0을 255로 설정할 수 있습니다.

o는 투명을 의미하고 255는 불투명을 의미합니다.

가장 좋은 방법은 투명 색상 코드를 사용하는 것입니다.

android:background="#00000000"

어떤 것이든 투명하게 만들기 위해 #00000000 색 코드를 사용합니다.

사용:

<ImageButton
 android:id="@+id/back"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:background="@null"
 android:padding="10dp"
 android:src="@drawable/backbtn" />

사용하다ImageView기본적으로 투명 배경을 가지고 있습니다...

저는 이미 배경에 무언가를 추가하고 있었기 때문에, 이것은 저에게 효과가 있었습니다.

   android:backgroundTint="@android:color/transparent"

(Android Studio 3.4.1)

편집: 안드로이드 API 레벨 21 이상에서만 작동합니다.호환성을 위해 대신 이것을 사용합니다.

   android:background="@android:color/transparent"

백그라운드를 투명으로 설정하면 다음 코드를 올바르게 사용할 수 있습니다.

<ImageButton 
android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/media_skip_backward"
android:background="transparent"></ImageButton>

XML에서 ImageButton의 배경을 @null로 설정합니다.

<ImageButton android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/media_skip_backward"
android:background="@null"></ImageButton>

"@null"을 사용합니다.그것은 나에게 효과가 있었다.

<ImageButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:srcCompat="@drawable/bkash"
    android:id="@+id/bid1"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:background="@null" />

그건…android:background="@android:color/transparent"

<ImageButton
    android:id="@+id/imageButton"
    android:src="@android:drawable/ic_menu_delete"
    android:background="@android:color/transparent"
/>

작동하며 버튼 클릭 시 시각적 피드백을 유지합니다.

android:backgroundTintMode="screen"

다음 중 하나를 사용할 수 있습니다.android:background="#00000000"또는android:backgroundTint="#00000000"

배경색을 투명하게 프로그래밍 방식으로 설정합니다.

 ImageButton btn=(ImageButton)findViewById(R.id.ImageButton01);
 btn.setBackgroundColor(Color.TRANSPARENT);

프로그래밍 방식으로는 다음을 수행할 수 있습니다.

image_button.setAlpha(0f) // to make it full transparent
image_button.setAlpha(0.5f) // to make it half transparent
image_button.setAlpha(0.6f) // to make it (40%) transparent
image_button.setAlpha(1f) // to make it opaque

만약 당신이 그것을 하고 싶다면..xml다음 코드를 사용합니다.

android:background="@null"

다음은 프로그래밍 방식으로 실행하는 예제입니다.

yourButton.setBackgroundResource(0);

패딩을 추가하는 것을 잊지 마세요, 버튼 효과를 보여줍니다.이 배경으로 조정할 패딩을 추가합니다.

android:background="?android:selectableItemBackground"
android:padding="5dp"
<ImageButton
    android:id="@+id/previous"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/media_skip_backward">
</ImageButton>

나는 투명한 것을 사용했습니다.png를해위를 .ImageButton 리고그고.ImageButton일했다.

언급URL : https://stackoverflow.com/questions/3402787/how-to-have-a-transparent-imagebutton-android

반응형