1

最初に、私はGoogle検索を行い、 StackOverFlowのテキストをTextViewのために切り捨てて質問しました。彼らは特定のことをよりよく理解することはできたが、問題の解決には役立たなかった。テーブル行内のTextViewコンテンツが切断される

これは私の問題です。

私はTableLayoutを使用して、2つのテキストフィールドを持つレコードを表示しています。各行には2つのセルがあります。 layout_widthは、すべてのセルでwrap_contentに設定されています。しかし、テキストが複数の行に表示されているにもかかわらず、その複数行テキストのすべての行は最後に切り捨てられます。

<?xml version="1.0" encoding="utf-8"?> 
    </TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content"> 
    <TableRow> 
     <TextView 
      android:text="Notes" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/visitation_notes" /> 
     <TextView 
      android:text="Need to visit again. Visit till the doctor understands the importance of the Test. The problem is, it is very difficult to get appointment for the visit. Still, we need to keep trying till the point reaches to him/her." 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/visitation_notes_value" 
      android:textAlignment="viewStart"/> 
    </TableRow> 
    </TableLayout> 

は再び訪問するビュー

Notes.Needを生産しました。医者まで訪問 テストの重要性が消えています。問題は、は非常に難しいです。 〜訪問のための予約を取得します。それでも、私たちはねdを試し続けること までポイントは彼/彼女に達する。太字カットオフばかりで書かれたテキストを持つ

TableLayoutの代わりにLinearLayoutを使用すると問題なく動作します。しかし、その問題は、各行の2番目の列を同じ位置(ハードコーディングなし)から始めることができないことです。

TextViewコンテンツが切断されないようにする方法を教えてください。

ここでは、上記の例で作成されたビューのscreenshotです。

+1

添付スクリーンショット – Rahul

+0

私はスクリーンショットを添付しました。今すぐご確認ください。 –

+0

TableRowの幅と高さはどれくらいですか?私はあなたのコードと私のためにうまく動作しようとしました – Rahul

答えて

1

ないすべてのデバイス

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@color/bgcolor" 
android:background="#ffffff" 
android:orientation="horizontal" 
android:padding="10dip" > 

<LinearLayout 
    android:id="@+id/llAvailableBookings" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center|top" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="25dip" 
     android:gravity="center" 
     android:textSize="24.5sp" 
     android:visibility="gone" /> 

    <TableLayout 
     android:id="@+id/tableLayout1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:stretchColumns="*" > 

     <TableRow> 

      <TextView 
       android:id="@+id/visitation_notes" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:text="Notes" /> 

      <TextView 
       android:id="@+id/visitation_notes_value" 
       android:layout_width="1dp" 
       android:layout_height="wrap_content" 
       android:singleLine="false" 
       android:text="Need to visit again. Visit till the doctor understands the importance of the Test. The problem is, it is very difficult to get appointment for the visit. Still, we need to keep trying till the point reaches to him/her." 
       android:textAlignment="viewStart" /> 
     </TableRow> 
    </TableLayout> 
</LinearLayout> 
+0

返信いただきありがとうございます。しかし、singleLineは推奨されていませんか?さらに、それができる場合は、0dpと1dpをビューの幅にハードコードしないことをお勧めします。とにかく、私は上記のコードを試して、ビューがうまく見えません。各行には1つの単語しかありません。 –

+0

シミュレーションにはどのデバイスを使用していますか? – HsRaja

+0

Nexus 4を使用しています。違いがありますか? –

1

ため、このコードやスーツを試してみてください、この

私は次のコードで解決 TableRow要素の問題内の切り捨て TextViewを得た
<TableRow> 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Note" /> 

    <TextView 
     android:layout_weight="3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:ems="10" 
     android:text="Need to visit again. Visit till the doctor understands the importance of the Test. The problem is, it is very difficult to get appointment for the visit. Still, we need to keep trying till the point reaches to him/her." /> 


</TableRow> 
+0

ありがとうございます。それは動作します。しかし、なぜそれが動作するのを助けてください。私が知る限り、 'layout_weight'プロパティは、' View'が 'LinearLayout'でどのくらいのスペースを取るかを決めた後、余分なスペースを分割するのに役立ちます。 'layout_width = wrap_content'を設定し、' TextView'の場合、コンテンツサイズが画面サイズを超えたときの動作を理解できません。 –

+0

ems属性を使用してサイズを調整できます。 width = 0dpに設定しても動作しますが、layout_weight値を管理する必要があります。 –

+0

emsを使用してtextviewの幅を修正できます。 –

0

<TableRow> 

    <TextView 
     android:layout_gravity="right" 
     android:text="Address: " 
     android:textStyle="bold"/> 

    <TextView 
     android:id="@+id/address" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:paddingRight="10dp" 
     android:text="123 W. Abc St., San Diego CA 90333"/> 

</TableRow> 
関連する問題