2012-06-27 2 views
0

У меня есть Gridveiew.In getView из GridView, который я передаю, RelativeLayout (содержит изображение и текстовое представление в качестве его дочерних элементов). Я хочу, чтобы текст textview прокручивался по горизонтали слишком долго. это мой xml. но TextView не прокручиваетсяКак прокрутить текст textview внутри Gridview

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:clickable="false"> 
    <ImageView 
     android:id="@+id/theme_preview" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:scaleType="fitXY" /> 
    <TextView 
     android:id="@+id/theme_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/theme_preview" 
     android:layout_centerHorizontal="true" 
     android:lines="1" 
     android:ellipsize="marquee" 
     android:scrollHorizontally="true" 
     android:marqueeRepeatLimit="marquee_forever" 
     /> 
</RelativeLayout> 
+0

ты пытался андроид: кликабельно = «ложь» для относительного расположения. –

+0

вы можете обернуть свой относительный макет с помощью HorixzontalScrollView (http://developer.android.com/reference/android/widget/HorizontalScrollView.html) –

+0

Просьба указать ответ как принятый, если он будет работать. :) –

ответ

2

Добавить this attribute в свой TextView:

android:scrollHorizontally="true" 

Или, если вы хотите сделать это в коде:

textView.setHorizontallyScrolling(true); 
+0

Привет ariefbayu, спасибо за ответ, но его не работает здесь мой xml-файл, который я раздуваю в gridview. – user1479604

+0

см. Мой обновленный ответ. – ariefbayu

+0

i установлен как в xml, так и в коде, но его не работает. – user1479604

0
Try Using this, 



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


       <ImageView 
        android:id="@+id/theme_preview" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:scaleType="fitXY" /> 
    <HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent"> 
       <TextView 
        android:id="@+id/theme_name" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_below="@+id/theme_preview" 
        android:layout_centerHorizontal="true" 
        android:lines="1" 
        android:ellipsize="marquee" 
        android:scrollHorizontally="true" 
        android:marqueeRepeatLimit="marquee_forever" 
        /> 
    </HorizontalScrollView> 
      </RelativeLayout> 
+0

HorizontalScrollView будет прокручивать весь relativeLayout. Но мои функции разные. Мой сетка позиционируется правильно. Я хочу, чтобы текст textivew прокручивался по горизонтали. – user1479604

+0

Я отредактировал свой ответ, вы просто поместили текстовый вид в HorizontalScrollView, который должен работать и соответствовать вашим требованиям. –

+0

i окруженный текстовый просмотр с помощью HorizontalScrollView, но все еще не работает :(и я теряю функциональность onItemClick на моем gridview. – user1479604

0

Попробуйте Используя это,

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="70dp" 
     android:layout_height="fill_parent" > 

     <ImageView 
      android:id="@+id/item_image" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:gravity="center_vertical|center_horizontal" 
      android:layout_marginTop="14dp" 
      android:src="@drawable/ic_launcher" /> 

     <TextView 
      android:id="@+id/item_text" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@+id/item_image" 
      android:layout_below="@+id/item_image" 
      android:scrollHorizontally="true" 
      android:singleLine="true" 
      android:freezesText="false" 
      android:selectAllOnFocus="false" 
      android:ellipsize="marquee" 
      android:marqueeRepeatLimit="marquee_forever" 
      android:gravity="center_vertical|center_horizontal" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 

    </RelativeLayout> 

В классе GridView адаптера установить textview.setSelected (истинную)

holder.txtTitle = (TextView) row.findViewById(R.id.item_text); 
holder.txtTitle.setSelected(true); 
Смежные вопросы