Android에서 이미지 뷰의 투명한 배경 설정


334

이미지보기를 추가하는 웹보기를 사용하고 있습니다. 이 이미지 뷰의 배경을 투명하게 설정하려면 어떻게해야합니까?

나는 이것을 시도했다 :

mImageview.setBackgroundResource(R.color.trans);

어디 trans<color name="trans">#00000000 </color>.


답변:


571

XML에서 Background속성을 색상, White(#FFFFFF)음영 또는 Black(#000000)음영으로 설정하십시오. 투명성을 원한다면 실제 해시 코드 앞에 80을 넣으십시오.

#80000000

원하는 색상을 투명하게 변경합니다. : :)


3
@Harshad :?로 설정된 배경 이미지의 투명도를 40 %로 설정할 수 View.setBackgroundResource(R.drawable.something)있습니까?
Luis A. Florit

@ LuisA.Florit RGB 값에 0.4 (40/100)를 곱 해야하는이 링크를 찾았습니다. 이것이 도움이되는지 확실하지 않지만 시도해 볼 수 있습니다. forums.esri.com/Thread.asp?c=93&f=1730&t=223940
Harshad

3
@Harshad : 죄송합니다. 귀하의 답변을 이해하지 못했습니다. RGB 값이 없지만 배경 이미지가있는 TextView, 예를 들어 50 % 투명합니다. 그러나 어쨌든, 나는 stackoverflow에서 답을 찾았습니다 View.getBackground().setAlpha(50). 더 간단하지 않을 수 있습니까? : o) 어쨌든 도와 주셔서 감사합니다 !!
Luis A. Florit

21
실제 해시 코드 앞에 01에서 99 사이의 숫자를 추가하면 투명도가 제공됩니다. 예 : 투명성 블랙 - #10000000 덜 투명 블랙 - #99000000
AnhSirk Dasarp

64
@AnhSirkDasarp 01에서 99까지는 물론 나머지 숫자도 16 진수이므로 00에서 ff까지 아무 것도 넣을 수 없습니다. 50 % 투명하게하려면 50 대신 80을 써야하고, 다른 것들은 몇 가지 기본적인 계산을해야합니다.
Nemanja Kovacevic

571

이 코드를 XML로 추가하여 레이아웃, 뷰 또는 구성 요소의 배경을 투명하게 설정할 수 있습니다.

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

4
# ff000000을 순수한 투명으로 처리하지 않는 이전 버전의 Android에서 문제가 발생했습니다. 이것을 사용하여 수정했습니다.
로에 슈그

11
아마도 #FF 00 00 00 = 100 % 검은 색이기 때문일 것입니다.
Derk-Jan

3
@Ioeschg 첫 두 글자는 알파 채널 용입니다. # 00xxxxxx는 투명하지만 x는 원하는 16 진수 값입니다.
user1032613

10
누군가가 관심이 있다면 프로그래밍 방식으로 동등한 것이 Android.Resource.Color.Transparent :)
leoneboaventura

3
@undroid tryandroid:background="#00ffffff"
ban-geoengineering

179

Harshad가 언급 한 것 외에도 :

16 진 색상 코드에는 2 개의 16 진 문자를 추가 할 수 있습니다. 8 자리 16 진수 색상 코드의 처음 두 문자는 Android에서 불투명도를 나타냅니다.

두 개의 16 진 문자 범위는 00-FF입니다. 예를 들어

  • 보통 불투명 한 검은 색 16 진수 "# 000000"
  • 완전 투명- "# 00000000"
  • 완전 불투명- "# FF000000"
  • 50 % 투명- "# 7F000000"

이 방법으로 모든 색상을 투명도 수준으로 변경할 수 있습니다.

백분율에서 16 진수 접두사를 찾으려면

백분율 값을 100으로 나누고 255를 곱하여 10 진수 값을 얻습니다. 여기서 십진수를 16 진수로 변환 하십시오 .

예를 들어, 50 %의 경우 50/100 * 255 = 127입니다. 링크를 사용하면 16 진수 값 7F를 얻습니다.

출처 : Android : 투명하거나 불투명 한 배경을 만드는 방법


3
실제로, 완벽한 50 %의 투명성은 7 층이 아니라 80)
shinyuX

147

20 % 또는 30 %의 투명도를 추가하려면 CC와 같이 16 진수 코드 앞에 두 문자를 추가해야합니다.

노트

android:background="#CCFF0088" XML로

여기서 CC는 알파 값이고 FF는 빨간색 요소, 00은 녹색 요소, 88은 파란색 요소입니다.

일부 불투명도 코드 :

16 진 불투명도 값

100%  FF
95%  F2
90%  E6
85%  D9
80%  CC
75%  BF
70%  B3
65%  A6
60%  99
55%  8C
50%  80
45%  73
40%  66
35%  59
30%  4D
25%  40
20%  33
15%  26
10%  1A
5%   0D
0%   00

다음과 같이 프로그래밍 방식으로 불투명도를 설정할 수도 있습니다.

yourView.getBackground().setAlpha(127);

불투명도를 0 (완전 투명)에서 255 (완전 불투명) 사이로 설정하십시오. 127.5는 정확히 50 %입니다.

주어진 수식을 사용하여 모든 수준의 투명도를 만들 수 있습니다. 반투명을 원한다면 :

 16 |128          Where 128 is the half of 256.
    |8 -0         So it means 80 is half transparent.

그리고 25 % 투명도 :

16 |64            Where 64 is the quarter of 256.
   |4 -0          So it means 40 is quarter transparent.

42

아래 코드를 검정색으로 사용하십시오.

<color name="black">#000000</color>

이제 불투명도를 사용하려면 아래 코드를 사용할 수 있습니다.

<color name="black">#99000000</color>

불투명 코드의 경우 다음과 같습니다.

100 % — FF

95 % — F2

90 % — E6

85 % — D9

80 % — CC

75 % — BF

70 % — B3

65 % — A6

60 % — 99

55 % — 8C

50 % — 80

45 % — 73

40 % — 66

35 % — 59

30 % — 4D

25 % — 40

20 % — 33

15 % — 26

10 %-1A

5 % — 0D

0 % — 00


27

미리 정의 된 상수가 이미 있습니다. 사용하십시오 Color.TRANSPARENT.


1
상수를 사용하는 것이 가장 좋고 깨끗한 방법이어야합니다! 그러나이 경우의 값은 (완전히 불투명 한 것으로 예상되지 않음 Color.TRANSPARENT)으로 설정되어 있으므로 어떻게 진행하는지에 따라이 상수는 실제로 투명성을 달성하는 데 도움이되지 않을 수 있습니다! 상수 추천을위한 +1! 0x000000000xFF000000
Levite

24

R.color.transparent : 이미 안드로이드에 투명이 내장되어 있습니다. http://developer.android.com/reference/android/R.color.html#transparent

그러나 WebView에 배치하는 이미지의 배경을 ImageView 배경이 아닌 투명한 PNG로 투명하게 만들고 싶을 수도 있습니다. 실제 이미지가 전혀 보이지 않으면 ImageView 배경을 통해 볼 수 없습니다.


유 didnt 한 일을 said..but HV로 이미지가 PLZ 도움 .. ... transparent..it을 didnt 근래 어떤 background..i HV도 시도 설정 이미지 뷰 배경입니다
mudit

사용중인 이미지에 대한 링크, 사용중인 코드 및 레이아웃과 같은 세부 정보를 게시 할 수 있습니까?
Intrications


13

이 코드를 사용해보십시오 :)

완전히 투명한 헥사 코드- "# 00000000"


10

또는 다음 코드를 사용하여 자원 ID를 구문 분석하십시오.

  mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));

10

XML 파일에서 "Alpha"속성을 설정하십시오.

와 같은

android:alpha="0.0" // for transparent
android:alpha="1.0" // for opaque

필요한 투명도를 적용하기 위해 10 진수로 0.0에서 1.0 사이의 값을 지정할 수 있습니다. 예를 들어, 0.5 투명성은 비활성화 된 구성 요소에 이상적입니다


5

여전히이 문제에 직면 한 사람들을 위해 시도 할 수 있습니다
element.getBackground().setAlpha(0);


내가 얻을NullPointerException: Attempt to invoke virtual method 'void android.graphics.drawable.Drawable.setAlpha(int)' on a null object reference
IgorGanapolsky

1
@IgorGanapolsky : elementnull 객체인지 확인하십시오
SuicideSheep

5

완벽한 투명성을 위해 다음을 사용하십시오.

#00000000

# 80000000으로 시도했을 때 원하지 않는 검은 투명 오버레이가 나타납니다. 처음 두 자리를 변경하십시오. 투명도를 조절합니다

#00000000
#10000000
#20000000
#30000000

투명한 어둠에 완벽한 색상
Najib Ahmed Puthawala



4

내가 만난 또 다른 작업 옵션은 설정하는 것입니다. android:background="@null"


2

당신은 또한 사용할 수 있습니다 View.setAlpha(float)가시성을 정확하게 변경하는 데 .

0은 투명하고 1은 완전히 보입니다. ;)


1
뷰 배경이 아닌 뷰의 알파가 변경됩니다!
IgorGanapolsky

그러면 내용 / 그림을 포함하여 전체보기가 투명 해집니다.이 경우 잘못된 알파를 설정하십시오. 사용자는 이미지의 투명도를 유지하여 이미지를 투명하게 변경하지 않습니다.
Haroun Hajem

2

다음 코드를 사용해보십시오. 그것은 전체 또는 더 당신을 도울 것입니다.

  1. 이 코드를 사용하여 배경색을 설정하도록 설계된 .xml 파일 :

    android:background="#000000"

    또는

    android:background="#FFFFFF"

    이미지는 여기

    또는 프로그래밍 방식으로 설정할 수도 있습니다.

  2. 또한이 코드를 프로그래밍 방식으로 사용할 수 있습니다.

    image.setBackgroundDrawable(getResources().getDrawable(
        R.drawable.llabackground));
  3. 또한 프로그래밍 방식으로 배경색을 설정하는이 코드 :

    image.setBackgroundColor(Color.parseColor("#FFFFFF"));
  4. 이 코드는 프로그래밍 방식으로 동일합니다.

    image.setBackgroundColor(getResources().getColor(Color.WHITE));

색상은 투명에 사용할 색상을 선택하는 데 따라 다릅니다. 대부분 흰색 또는 #FFFFFF 색상을 사용하십시오.

관련 R.drawable.llabackground:이 코드 줄은 목적에 따라 특별하거나 다른 것과 같은 배경 스타일을위한 것입니다. 이것을 사용할 수도 있습니다.


2

드로어 블 XML 이미지를 사용하는 경우 아래 그림과 같이 투명하게 만들거나 색상 코드를 사용할 수 있습니다.

<color name="black">#99000000</color> 

여기에 이미지 설명을 입력하십시오


1

투명도 정보가 포함 된 색상 정의는 다음과 같은 형식 일 수 있습니다.

#AARRGGBB또는 #ARGB.

완전한 투명도를 위해 더 짧은 값을 사용할 수도 있습니다 : # 0000 .

다른 값은 다음과 같습니다.

white  grey   black
#FFFF  #F888  #F000 - full color
#EFFF  #E888  #E000
#DFFF  #D888  #D000
#CFFF  #C888  #C000
#BFFF  #B888  #B000
#AFFF  #A888  #A000
#9FFF  #9888  #9000
#8FFF  #8888  #8000
#7FFF  #7888  #7000
#6FFF  #6888  #6000
#5FFF  #5888  #5000
#4FFF  #4888  #4000
#3FFF  #3888  #3000
#2FFF  #2888  #2000
#1FFF  #1888  #1000
#0FFF  #0888  #0000 - full transparency

0
ImageView.setBackground(R.drawable.my_background);

ImageView.setBackgroundResource(R.color.colorPrimary);

ImageView.getImageAlpha();

ImageView.setAlpha(125); // transparency

1
이 코드는 문제를 해결하는 데 도움이 될 수 있지만 질문에 그리고 / 또는 어떻게 대답 하는지 는 설명하지 않습니다 . 이 추가 상황을 제공하면 장기적인 가치가 크게 향상됩니다. 제발 편집 제한 및 가정이 적용되는 것을 포함하여, 설명을 추가 답변을.
Toby Speight

0

이 시도:

#aa000000

투명도 000000 = 검정의 경우 원하는 색상에 대해이 6 개의 숫자를 변경할 수 있습니다.


색상 진수 전에 사용 AA로 자원 것입니다
미나 Fawzy는
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.