2017-01-04 10 views
0

私のtextviewsのサイズをデバイスのサイズに基づいて調整しようとしています。しかしそれは部分的な調整です。私が何を意味するかを教えてください: enter image description hereレイアウトの水平ビューを調整する方法

次の図は、望ましい効果を示しています。 TextView Bの長さは、textviewAの長さを決定します。つまり、部分Cは完全に独立しており、固定サイズの最後にあります。 textview Aのサイズを小さくすると、末尾はelipsizedになります。私は、RelativeLayoutと同様に、重み付きでLinearLayoutを使用することからシフトしようとしましたが、望みの効果を達成していません。思考?

何私が試してみました。このような

<?xml version="1.0" encoding="utf-8"?> 
 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 
    xmlns:foobar="http://schemas.android.com/apk/res-auto" 
 
    android:id="@+id/container" 
 
    android:layout_width="match_parent" 
 
    android:layout_height="50dp" 
 
    android:paddingBottom="3dp" 
 
    android:paddingTop="3dp"> 
 

 
    <com.android.volley.toolbox.NetworkImageView 
 
     android:id="@+id/thumbnail" 
 
     android:layout_width="match_parent" 
 
     android:layout_height="50dp" 
 
     android:background="#ddd" 
 
     android:scaleType="centerCrop" 
 
     android:visibility="invisible" /> 
 

 
    <RelativeLayout 
 
     android:layout_width="fill_parent" 
 
     android:layout_height="wrap_content" 
 
     android:orientation="horizontal"> 
 

 
     <com.ctrlplusz.anytextview.AnyTextView 
 
      android:id="@+id/tv2" 
 
      android:layout_width="wrap_content" 
 
      android:layout_height="wrap_content" 
 
      android:layout_alignParentLeft="true" 
 
      android:layout_centerVertical="true" 
 
      android:layout_toLeftOf="@+id/input" 
 
      android:ellipsize="end" 
 
      android:maxLength="20" 
 
      android:maxLines="1" 
 
      android:paddingLeft="7dp" 
 
      android:singleLine="true" 
 
      android:text="cshbcadhbhjvbbvjfbvcsdhabcsdjbvjsdbvjsfdbvsfnvk" 
 
      android:textColor="@color/black" 
 
      android:textSize="20dp" 
 
      foobar:typeface="Roboto-Light.ttf" /> 
 
     <!--android:text="cshbcadhbhjvbbvjfbvcsdhabcsdjbvjsdbvjsfdbvsfnvk"--> 
 
     <RelativeLayout 
 
      android:id="@+id/input" 
 
      android:layout_width="wrap_content" 
 
      android:layout_height="wrap_content" 
 
      android:layout_alignParentRight="true" 
 
      android:layout_centerVertical="true" 
 
      android:layout_gravity="center_vertical"> 
 

 
      <com.ctrlplusz.anytextview.AnyTextView 
 
       android:id="@+id/price" 
 
       android:layout_width="wrap_content" 
 
       android:layout_height="wrap_content" 
 
       android:layout_centerVertical="true" 
 
       android:layout_toLeftOf="@+id/toggle" 
 
       android:gravity="end" 
 
       android:paddingRight="4dp" 
 
       android:text="3900" 
 
       android:textColor="@color/gray" 
 
       android:textSize="20dp" 
 
       foobar:typeface="Roboto-Light.ttf" /> 
 

 
      <RelativeLayout 
 
       android:id="@+id/toggle" 
 
       android:layout_width="wrap_content" 
 
       android:layout_height="wrap_content" 
 
       android:layout_centerVertical="true" 
 
       android:layout_marginRight="5dp" 
 
       android:gravity="end" 
 
       android:orientation="horizontal"> 
 

 
       <RelativeLayout 
 
        android:id="@+id/minus" 
 
        android:layout_width="38dp" 
 
        android:layout_height="35dp" 
 
        android:layout_centerVertical="true" 
 
        android:background="@drawable/minus_product_icon"> 
 

 
        <ImageView 
 
         android:layout_width="20dp" 
 
         android:layout_height="20dp" 
 
         android:layout_centerHorizontal="true" 
 
         android:layout_centerVertical="true" 
 
         android:src="@drawable/ic_minus" /> 
 
       </RelativeLayout> 
 

 

 
       <RelativeLayout 
 
        android:id="@+id/add" 
 
        android:layout_width="38dp" 
 
        android:layout_height="35dp" 
 
        android:layout_centerVertical="true" 
 
        android:layout_toRightOf="@+id/num" 
 
        android:background="@drawable/add_product_icon"> 
 

 
        <ImageView 
 
         android:layout_width="20dp" 
 
         android:layout_height="20dp" 
 
         android:layout_centerHorizontal="true" 
 
         android:layout_centerVertical="true" 
 
         android:src="@drawable/ic_add_icon" /> 
 
       </RelativeLayout> 
 

 
       <EditText 
 
        android:id="@+id/num" 
 
        android:layout_width="40dp" 
 
        android:layout_height="35dp" 
 
        android:layout_centerVertical="true" 
 
        android:layout_toRightOf="@+id/minus" 
 
        android:background="@drawable/product_custom_edit_text" 
 
        android:digits="1234567890" 
 
        android:focusable="true" 
 
        android:focusableInTouchMode="true" 
 
        android:gravity="center" 
 
        android:imeOptions="actionDone" 
 
        android:inputType="numberDecimal" 
 
        android:padding="2dp" 
 
        android:singleLine="true" 
 
        android:text="0" 
 
        android:textColor="#000" 
 
        android:textCursorDrawable="@drawable/mycursor" /> 
 

 
      </RelativeLayout> 
 

 
     </RelativeLayout> 
 
    </RelativeLayout> 
 

 

 
    <com.ctrlplusz.anytextview.AnyTextView 
 
     android:id="@+id/p" 
 
     android:layout_width="0dp" 
 
     android:layout_height="0dp" 
 
     android:layout_centerVertical="true" 
 
     android:layout_gravity="center_vertical" 
 
     android:layout_marginLeft="11dp" 
 
     android:textColor="@color/gray" 
 
     android:textSize="20dp" 
 
     foobar:typeface="Roboto-Light.ttf" /> 
 

 
</RelativeLayout>

答えて

1

何か?

<?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="100dp" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/a" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@color/blue" 
     android:textColor="@android:color/white" 
     android:text="hi dear" 
     android:layout_toLeftOf="@+id/b"/> 

    <TextView 
     android:id="@+id/b" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:background="@color/black" 
     android:textColor="@android:color/white" 
     android:text="hello world" 
     android:layout_toLeftOf="@+id/c"/> 

    <TextView 
     android:id="@+id/c" 
     android:layout_width="100dp" 
     android:layout_height="match_parent" 
     android:layout_alignParentRight="true" 
     android:textColor="@android:color/white" 
     android:text="hi darling" 
     android:background="@color/green"/> 

</RelativeLayout> 
+0

ありがとうございました! –

0
<?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="100dp" 
android:orientation="vertical"> 

<TextView 
    android:id="@+id/a" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:background="@color/blue" 
    android:textColor="@android:color/white" 
    android:text="hi dear" 
    /> 

<TextView 
    android:id="@+id/b" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:background="@color/black" 
    android:textColor="@android:color/white" 
    android:text="hello world" 
    android:layout_toRightOf="@+id/a" 
    android:layout_toLeftOf="@+id/c"/> 

<TextView 
    android:id="@+id/c" 
    android:layout_width="100dp" 
    android:layout_height="match_parent" 
    android:layout_alignParentRight="true" 
    android:textColor="@android:color/white" 
    android:text="hi darling" 
    android:background="@color/green"/> 

</RelativeLayout> 

BがAに依存しているように、このレイアウトはあなたのためのファインに動作します。 :)

関連する問題