2012-05-24 3 views
3

Я пробовал много прокручивать текст по горизонтали внутри списка.
я хочу один из моих TextView прокрутки по горизонтали автоматически, как шатёр РМКО возможность установить горизонтальную полосу прокрутки и прокручивать по прикасаясь к нему, какTextview не прокручивается внутри пользовательского списка.

TVad.setMovementMethod(new ScrollingMovementMethod()); 

Это мой XML-файл

<?xml version="1.0" encoding="utf-8"?> 

<TextView 
    android:id="@+id/tvinboxname" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceMedium" /> 

<TextView 
    android:id="@+id/tvinboxmsg"  
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/tvinboxname" 
    android:maxLength="10" 
    android:textAppearance="?android:attr/textAppearanceMedium" /> 

<TextView 
    android:id="@+id/tvtimeStamp" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_below="@+id/tvinboxmsg" 
    android:textAppearance="?android:attr/textAppearanceSmall" /> 


    <TextView 
     android:id="@+id/tvadmsg" 
     android:layout_width="wrap_content" 

     android:layout_height="wrap_content" 
     android:layout_below="@+id/tvtimeStamp" 
     android:ellipsize="marquee" 
     android:focusableInTouchMode="true" 
     android:inputType="text" 
     android:focusable="true" 
     android:marqueeRepeatLimit="marquee_forever" 
     android:lines="1" 
     android:scrollHorizontally="true" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:textColor="#330066" /> 

и в моем методе GetView

// @Override 
     public View getView(final int position, View convertView, 
       ViewGroup parent) { 
      convertView = inflater.inflate(R.layout.inboxtextviews, null); 
      Tvname = (TextView) convertView.findViewById(R.id.tvinboxname); 
      Tvname.setText(VCAESInboxWithOutCheckboxes.Inboxlist.get(position) 
        .getname()); 
      TVmsg = (TextView) convertView.findViewById(R.id.tvinboxmsg); 
      TVmsg.setText(VCAESInboxWithOutCheckboxes.Inboxlist.get(position) 
        .getmessage()); 
      TVtimeStamp = (TextView) convertView.findViewById(R.id.tvtimeStamp); 
      TVtimeStamp.setText(VCAESInboxWithOutCheckboxes.Inboxlist.get(
        position).getTimeStamp()); 

      TVad= (TextView) convertView.findViewById(R.id.tvadmsg); 

      TVad.setText(VCAESInboxWithOutCheckboxes.Inboxlist.get(
        position).getAd()); 

      TVad.setSelected(true); 
); 
      return convertView; 
     } 

я искал много на этом в StackOverflow и не может отображать текст прокрутки.

ответ

6

Использовать пользовательский класс, как показано ниже, и

public class MyTextView extends TextView{ 

public MyTextView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
     init(); 
     rotate(); 
    } 

    public MyTextView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
     init(); 
     rotate(); 
    } 

    public MyTextView(Context context) { 
     super(context); 
     init(); 
     rotate(); 
    } 

    private void rotate() { 
     // TODO Auto-generated method stub 
     setSelected(true); 
    } 

    private void init() { 
     if (!isInEditMode()) { 

     } 
    } 


    } 

добавить его в XML-файл для таможенных ListView, как показано ниже

<Your Package Name.MyTextView 
    android:layout_marginTop="10dip" android:id="@+id/tv_parse" 
    android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:textSize="22px" 
     android:textColor="#34A4c5" 
     android:ellipsize="marquee" 
     android:maxWidth="220dp" 
     android:fadingEdge="horizontal" 
     android:marqueeRepeatLimit="marquee_forever" 
     android:scrollHorizontally="true" 
     android:singleLine="true" 
     android:layout_marginLeft="10dp" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:layout_marginRight="10dp"></Your Package Name.MyTextView> 
+0

thanx это сработало – user1203673

+0

@ user1203673 Нет упоминания – Khan

+0

@ Khan, пожалуйста, скажите мне, чтобы я разместил вышеописанный класс MyTextView. Будет ли он внутренним классом класса Adapter (Класс, который расширяет Baseadapter), а также вышеупомянутый файл xml. Мне нужно, чтобы мое текстовое поле, которое присутствует внутри строки списка, было прокручиваемо вертикально. Пожалуйста, помогите мне в этом. Спасибо – Joyson

0

Для этого вы создаете строку списка из XML, используя SimpleListAdapter. Поместите scrollview в строку в XML.

<LinearLayout> 
<scrollView> 
<textview/> 
</scrollView> 
</LinearLayout> 
+0

если мы используем Scrollview не будет прокрутки в шатре. мы должны прокрутить его. я хочу, чтобы мое текстовое представление автоматически прокручивалось при открытии моего списка. – user1203673

3

It вы хотите TextView для прокрутки по горизонтали, а список IDLE вам нужно установить TextView в выбранное состояние.

public void bindView.... 
// Assuming you have a static view holder class 

viewHolder.myTextViewToScroll.setSelected(true); 

Теперь он должен прокручивать :)

+0

@ пользователь1484117 не прокручивается. Текстовое представление находится внутри строки настроенного представления списка – Joyson

Смежные вопросы