2017-10-04 1 views
-1

Button, TextView 및 ImageView가있는 간단한 레이아웃을 만들었습니다 (물음표가 그 안에 있음). ImageView를 Button의 오른쪽 가장자리에 맞추려면 어떻게해야합니까?

The question mark should be a bit more right

enter image description here

<Button 
     android:background="#f00" 
     android:textSize="25dp" 
     android:layout_width="200dp" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:text="Button" 
     android:id="@+id/button" /> 


    <TextView 
     android:id="@+id/textViewmas" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_above="@+id/button" 
     android:layout_alignLeft="@+id/button" 
     android:layout_alignStart="@+id/button" 
     android:text="title " 
     android:textSize="18dp" /> 

    <ImageView 
     android:id="@+id/questionmark" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@id/textViewmas" 
     android:layout_alignTop="@+id/textViewmas" 
     android:layout_alignRight="@+id/button" 
     android:layout_alignEnd="@+id/button" 
     app:srcCompat="@drawable/questionmark"/> 

는 I 버튼의 오른쪽 가장자리에 정렬하도록 이미지의 우측 에지 (와 Questionmark)를 원한다. 상단 및 하단은 제목의 textView (동일한 높이)의 위쪽과 아래쪽에 정렬해야합니다.

왜 이미지가 오른쪽 가장자리에 정렬되지만 조금 더 왼쪽에 정렬되지 않습니까? 제목을 textsize (예 : 30dp)로 늘리면 문제가 해결되지만 작은 textsize가 필요하다는 것을 알았습니다.

------ EDIT : 이미지의 최소 크기가 적합하지 않을 수 있습니다.

android:layout_alignEnd="@+id/button" 

을 그리고 당신은 왼쪽에서 약간의 마진을 추가 할 수 있습니다

android:layout_alignRight="@+id/button" 

또는 :

+0

u가 원하는 경우에 paint는 그 때 u를 정확하게 디자인 할 것이다. –

+0

이미지에 여분의 여백이 없는지 확인하십시오. 이미지에 여분의 여백이 있으면 Photoshop 또는 다른 도구를 사용하여 제거하십시오. 또는이 이미지로 확인하고 적합 여부를 확인하십시오. https://image.flaticon.com/icons/png/512/78/78299.png – Aveek

+0

솔루션을 게시했습니다. –

답변

1

당신의 ImageView

<Button 
    android:id="@+id/button" 
    android:layout_height="wrap_content" 
    android:layout_width="200dp" 
    android:textSize="25dp" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:background="#f00" 
    android:text="Button"/> 

<TextView 
    android:id="@+id/textViewmas" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button" 
    android:layout_alignLeft="@+id/button" 
    android:text="title " 
    android:textSize="18dp" /> 

<ImageView 
    android:id="@+id/questionmark" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBottom="@id/textViewmas" 
    android:layout_alignTop="@+id/textViewmas" 
    android:layout_alignRight="@+id/button" 
    android:layout_alignEnd="@+id/button" 
    android:scaleType="fitEnd" 
    app:srcCompat="@mipmap/ic_launcher"/> 

설명 이것은 ImageViewandroid:layout_alignTop="@+id/textViewmas" 속성없이 나타납니다 어떻게

android:scaleType="fitEnd" 추가

enter image description here

때 당신은 dd layout_alignTop 속성이 ImageView이면 높이가 TextView으로 축소되고 포함 된 이미지의 크기가 축소됩니다. 기본적으로 ImageViewscaleType 속성은 centerInside 인 것으로 보입니다. 이미지를 축소하고 이미지보기의 중앙에 맞춰서 왼쪽과 오른쪽에 약간의 공간을 추가합니다.

이 솔루션은 이미지보기

출력의 끝으로 축소 된 이미지를 이동 android:scaleType="fitEnd"을 사용하는 것입니다 u는 정확히 유에서 이미지를 만들 수 있습니다 원하는 무엇

enter image description here

+0

고마워요, 마침내 작동합니다! – user7940193

0

당신은 사용할 수 있습니다.

+0

두 코드가 이미 코드에 추가되었습니다. 왼쪽 여백은 아무 것도 변경하지 않습니다. – user7940193

+0

그러면 텍스트 높이를 가져 와서 이미지의 높이와 높이로 설정할 수 있습니다. –

관련 문제