2017-01-29 3 views
0

Я хотел список интерактивного TextViews это XML У меня естьКак создать список TextViews

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/marque_scrolling_text" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="16dp" 
     android:ellipsize="marquee" 
     android:marqueeRepeatLimit="marquee_forever" 
     android:padding="16dp" 
     android:scrollHorizontally="true" 
     android:singleLine="true" 
     android:text="Create a Marquee (Scrolling Text) in Android Using TextView. Android Marquee (Scrolling Text) Tutorial with Example" 
     android:textSize="24sp" /> 
</LinearLayout> 

Хотел список всех элементов интерактивных

Это код, который я» м с использованием:

TextView marque1 = (TextView) this.findViewById(R.id.marque_scrolling_text); 
marque1.setSelected(true); 

marque1.setOnClickListener(new View.OnClickListener() 
{ 
    @Override 
    public void onClick(View v) 
    { 
     System.out.println("dhgjgf jfgsfjhsgfsjfgdfjh"); 
    } 
}); 

Возможно ли это?

+0

Использование виджета ListView для android https://developer.android.com/guide/topics/ui/layout/listview.html – USKMobility

+0

Но наклонное выделение с Listview + с трудом меняет цвет текста. –

+0

Почему вы не можете использовать шатер со списком? И какая у вас проблема с изменением цвета текста? –

ответ

0

Если вы не можете использовать ListView, вы можете динамически создавать и добавлять TextViews самостоятельно!

Я предполагаю, что у вас есть массив строк вы хотите, чтобы показать, как TextViews:

String[] strings = {"TextA", "TextB"}; 

Получить макет, который будет содержать все TextViews:

LinearLayout layout = (LinearLayout) findViewById(R.id.listLayout); 
// you will need to set an id for the layout in the xml 

Затем итерацию по списку, создать новый TextView для каждой строки, добавьте onClickListener и сделайте все, что вы хотите с ним (например, измените цвет текста), а затем добавьте его в макет:

for(String s : strings) 
{ 
    TextView newTextView = new TextView(this); 
    newTextView.setText(s); 
    newTextView.setTextColor(#0066ff); // for example 
    newTextView.setOnClickListener(new View.OnClickListener() 
     { 
      @Override 
      public void onClick(View v) 
      { 
       System.out.println("dhgjgf jfgsfjhsgfsjfgdfjh"); 
      } 
     }); 

    layout.addView(newTextView); 
} 
Смежные вопросы