1

мне нужно установить TextView точно определенную часть фото я использую из сильфона XML, но я установить все размеры инструкции я должен быть динамичным для различных размеров мобильного:android - установить TextView точно определенную часть фотографии?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="fitXY" 
     android:src="@drawable/list_back" /> 

    <TextView 
     android:id="@+id/CallCenter" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textColor="@android:color/background_dark" 
     android:textStyle="bold" /> 
</RelativeLayout> 

enter image description here

ответ

0

Я решить мою проблему:

<ImageView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:scaleType="fitXY" 
    android:src="@drawable/list_back" /> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 


    <View 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="1"/> 

    <TextView 
     android:id="@+id/CallCenter" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:paddingLeft="5dp" 
     android:paddingRight="15dp" 
     android:layout_weight="3" 
     android:textColor="@android:color/background_dark" 
     android:textStyle="bold" /> 
</LinearLayout> 

0

Have вы пытались использовать frameLayout? установить тяжести right | top и она должна работать на любом устройстве

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="fitXY" 
     android:src="@drawable/ic_launcher" /> 

    <TextView 
     android:id="@+id/CallCenter" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="test" 
     android:textSize="20sp" 
     android:textColor="@android:color/background_dark" 
     android:textStyle="bold" 
     android:layout_gravity="right|top" /> 

</FrameLayout> 
+0

Может ли человек, который не любил мой ответ сказать мне, почему, по крайней мере? –

0

Если вам нужно использовать RelativeLayout как корень, вы можете использовать layout_alignParentX свойства.

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="fitXY" 
     android:src="@drawable/list_back" /> 

    <TextView 
     android:id="@+id/CallCenter" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentRight="true" 
     android:textColor="@android:color/background_dark" 
     android:textStyle="bold" /> 
</RelativeLayout> 

Но если вам не нужно, я рекомендую использовать FrameLayout как корень, чтобы избежать двойного вызова на invalidate() из RelativeLayout.

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="fitXY" 
     android:src="@drawable/ic_launcher" /> 

    <TextView 
     android:id="@+id/CallCenter" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right|end" 
     android:text="test" 
     android:textSize="20sp" 
     android:textColor="@android:color/background_dark" 
     android:textStyle="bold" /> 
</FrameLayout>