2013-03-22 116 views
0

我遇到了这个问题,即android只支持用两行来椭圆化TextView。我发现这里的解决方案android ellipsize multiline textview将一个自定义的EllipsizingTextView添加到布局

但是我现在我的textviews越来越奇怪的显示,所以不是:

This is a test... 

我的TextView dispalys

This 
is 
a 

另外,EllipsizingTextView似乎影响的另一个TextView在同一个布局中没有被声明为EllipsizingTextView,而是普通的TextView。反正这里是有问题的代码:

@Override 
public View getView(int position, View itemView, ViewGroup parent) { 
    View v = itemView; 
    if (v == null) { 
     LayoutInflater vi = (LayoutInflater)parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

     v = vi.inflate(R.layout.list_item, null); 
     LinearLayout layout = (LinearLayout) v.findViewById(R.id.linearLayout1); 
     EllipsizingTextView desc = new EllipsizingTextView(parent.getContext()); 
     desc.setMaxLines(3); 
     layout.addView(desc); 
     ViewHolder vh = new ViewHolder(); 
     vh.label = (TextView) v.findViewById(R.id.label); 
     vh.img = (ImageView) v.findViewById(R.id.img); 
     vh.desc = (EllipsizingTextView) desc; 
     vh.dateAdded = (TextView) v.findViewById(R.id.tvDateAdded); 
     v.setTag(vh); 
    } 

和XML:

<LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_marginRight="0px" 
    android:orientation="vertical" > 

    <TextView android:text="@+id/TextView01" android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:id="@+id/label" 
    android:textSize="16sp" android:gravity="center_vertical" android:textColor="#000" android:singleLine="true" 
    /> 
    <TextView 
     android:id="@+id/tvDateAdded" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textColor="#000" 
     android:textSize="13sp" 

     android:textAppearance="?android:attr/textAppearanceSmall" /> 

</LinearLayout> 

回答

0

好的去除我在那里程序通过XML与元素名称添加ElipsizingTextView并添加视图中陈述固定它<com.example.EllipsizingTextView

任何人都知道我做错了,当以编程方式添加视图时?

相关问题