如何使Android TextView TextColor保持突出显示?

时间:2014-03-15 06:01:13

标签: android

我在ListView中有一个TextView。我希望TextView的TextColor在选中时保持高亮显示。它在较新版本中工作正常,但在较低版本中它没有突出显示,它是&#39 ;只是眨眼。

这是我的xml:

listview_bell_items.xml

<?xml version="1.0" encoding="utf-8"?>
   <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:orientation="horizontal"
       android:padding="5dip" >

       <TextView
             android:id="@+id/txt_bell_title"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_centerHorizontal="true"
             android:layout_centerVertical="true"
             android:text="@string/rihanna_love_the_way_lie"
             android:textColor="@drawable/bell_selected_text_color"
             android:textSize="15sp"
             android:textStyle="bold"
             android:typeface="sans" />

       <ImageView
            android:id="@+id/list_bell_image"
            android:layout_width="50dip"
            android:layout_height="50dip"
            android:src="@drawable/bronze_bell" />

  </RelativeLayout>

bell_selected_text_color.xml

<?xml version="1.0" encoding="utf-8"?>
     <selector xmlns:android="http://schemas.android.com/apk/res/android">

            <item android:state_pressed="true" android:color="@color/light_yellow"/>
             <item android:state_focused="true" android:color="@color/light_yellow"/>
             <item android:state_checked="true" android:color="@color/light_yellow"/>
             <item android:state_selected="true" android:color="@color/light_yellow"/>
             <item android:color="@color/white"/>

     </selector>

2 个答案:

答案 0 :(得分:0)

1.您可以使用setAlpha(0到255值)在textview中设置,以便在android textview中突出显示或设置不透明度。

Use this link: http://stackoverflow.com/questions/2838757/how-to-set-opacity-alpha-for-view-in-android         

(对于textview中设置的不透明度)

2.其他选项设置文本视图的闪烁:

public static void blinkView(final TextView txtView) {

        Animation anim = new AlphaAnimation(0.0f, 1.0f);
        anim.setDuration(400); // You can manage the time of the blink with this
                                // parameter
        anim.setStartOffset(20);
        anim.setRepeatMode(Animation.REVERSE);
        anim.setRepeatCount(Animation.INFINITE);
        txtView.startAnimation(anim);
    }

此功能设置为闪烁文本视图.....

我希望它对你有用..

答案 1 :(得分:0)

Selection类可用于实现您的目标。请参阅下面的Selection类的官方文档:

http://developer.android.com/reference/android/text/Selection.html

此外,以下链接可能很有用:

ClickableSpan TextView stays selected after click