zoukankan      html  css  js  c++  java
  • Android控件_使用TextView实现跑马灯效果

    一、第一种方式:

      通过TextView控件的自身属性实现(但是有缺点就是当多个TextView要实现这种效果的时候,只有第一个才有效果)

        实现方法加上下面四个属性:

        android:singleLine="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
        
        <TextView
            android:id="@+id/textView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="16dp"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:text="@string/textView" />
        
        <TextView
            android:layout_below="@+id/textView1"
            android:id="@+id/textView2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="16dp"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:text="@string/textView" />
        
        
    </LinearLayout>

    二、第二种方式:

      通过java代码实现(自定义一个TextView的类)

      加上下面四个属性:

        android:singleLine="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
        
        <com.muke.textview_edittext.text
            android:id="@+id/textView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="16dp"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:text="@string/textView" />
        
        <com.muke.textview_edittext.text
            android:layout_below="@+id/textView1"
            android:id="@+id/textView2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="16dp"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:text="@string/textView" />
        
        
    </LinearLayout>
    package com.muke.textview_edittext;
    
    import android.content.Context;
    import android.util.AttributeSet;
    import android.widget.TextView;
    
    public class text extends TextView {
    
        public text(Context context) {
            super(context);
            
        }
        
        public text(Context context, AttributeSet attrs) {
            super(context, attrs);
            
        }
        
        public text(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
            
        }
    
        public text(Context context, AttributeSet attrs, int defStyleAttr,int defStyleRes) {
            super(context, attrs, defStyleAttr, defStyleRes);
            
        }
        
        
        //关键在于这个方法
        public boolean isFocused(){
            return true;
        }
    
    }
    package com.muke.textview_edittext;
    
    import android.os.Bundle;
    import android.app.Activity;
    
    
    public class MainActivity extends Activity{
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    }
  • 相关阅读:
    android gradle 打包命令
    android RRO
    android adb 常用命令
    mui执行滑动事件: Unable to preventDefault inside passive event listener
    获取 input[type=file] 文件上传尺寸
    MySQL:You can't specify target table for update in FROM clause
    input标签中autocomplete="off" 失效的解决办法
    @media属性针对苹果手机写法
    centos7 下mysql5.7修改默认编码格式为UTF-8
    使用Mui加载数据后a标签点击事件失效
  • 原文地址:https://www.cnblogs.com/LO-ME/p/4659978.html
Copyright © 2011-2022 走看看