Android使用kotlin实现多行文本上下滚动播放

最近在项目中用到了上下滚动展示条目内容,就使用kotlin简单编写实现了一下该功能。

使用kotlin实现viewflipper展示textview的上下滚动播放

其中包含了kotlin的一些简单的使用

- 首先是在布局文件中如下代码:

<ViewFlipper
        android:id="@+id/viewFlipper"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:background="#555"
        android:flipInterval="2000">
        <TextView
            android:id="@+id/one"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="这是静态添加的条目1"
            android:textSize="25sp"
            android:layout_gravity="center"
            android:textColor="#f99" />
        <TextView
            android:id="@+id/two"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="这是静态添加的条目2"
            android:textSize="25sp"
            android:layout_gravity="center"
            android:textColor="#f99" />
</ViewFlipper>

布局中首先已经动态添加了两条textview文本,也可以如下面代码中进行动态添加textview文本

在kotlin代码中如下:

import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.view.Gravity
import android.view.animation.AnimationUtils
import android.widget.TextView
import kotlinx.android.synthetic.main.activity_flip.*

class FlipActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_flip)

        //给viewFlipper设置进出场的动画格式
       viewFlipper.setInAnimation(AnimationUtils.loadAnimation(this,R.anim.bottom_in))

viewFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,R.anim.top_out))

        //使用kotlin动态的创建textview的对象
        var textview: TextView = TextView(this)
        //kotlin中使用的是直接如下  .属性 来设置的,不再用setxxx设置属性
        textview.text = "这是一个动态添加的标题xxxx"
        textview.textSize = 25f
        textview.setTextColor(R.color.blue)
        textview.gravity = Gravity.CENTER

        viewFlipper.addView(textview) //动态添加一条textview(静态动态添加都可以)
        viewFlipper.startFlipping()  //启动viewflipper

    }
}

在kotlin中可以直接使用 import kotlinx.android.synthetic.main.activity_flip.* 语句导入,之后就可以入代码中直接书写viewFlipper 不用在进行findviewbyid进行初始化了;
其中给viewFlipper设置进出场动画如下:

bottom_in.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="1000"
        android:fromYDelta="100%p"
        android:toYDelta="0"/>
</set>

top_out.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="1000"
        android:fromYDelta="0"
        android:toYDelta="-100%p" />
</set>

以上就是多行文本的上下滚动的实现,如果想实现其他的动画切换可以更改 动画xml进行实现

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android使用自定义属性实现图片自动播放滚动的功能

    大家好,记得上次我带着大家一起实现了一个类似与淘宝客户端中带有的图片滚动播放器的效果,但是在做完了之后,发现忘了加入图片自动播放的功能(或许是我有意忘记加的.....),结果图片只能通过手指滑动来播放.于是今天我将再次带领大家,添加上之前遗漏的功能,让我们的图片播放器更加完善. 这次的程序开发将完全基于上一次的代码,如果有朋友还未看过上篇文章,请先阅读Android实现图片滚动和页签控件功能的实现代码. 既然是要加入自动播放的功能,那么就有一个非常重要的问题需要考虑.如果当前已经滚动到了最后一张

  • Android开发中TextView文本过长滚动显示实现方法分析

    本文实例讲述了Android开发中TextView文本过长滚动显示实现方法.分享给大家供大家参考,具体如下: 项目中在使用TextView时,总会有因要显示的内容过多而需要我们进行处理的问题.我们第一时间想到的是TextView的android:ellipsize属性,比如 android:ellipsize="end",效果是在文字的尾部打三个小点. 但是这个属性要配合android:singLine="true"使用.通常来说,要实现尾端三个点的省略号形式是比较

  • android输入框与文本框加滚动条scrollview示例

    我们都知道EditText与TextView是Android的文本输入框和文本显示框,但是基于手机屏幕的大小因素,如果在需要输入较多文字或者显示较多内容的时候,手机屏幕是远远不够的,因此让文本框具有滚动条的功能是手机上必备的,要加上滚动条,其实很简单,只需要在文本输入框或者文本显示框上面加上滚动条控件即可,该控件名字为ScrollView,以下我们对比下(以TextView举例). 复制代码 代码如下: //A.未加滚动效果 <TextView android:layout_width="

  • android实现滚动文本效果

    本文实例为大家分享了android实现滚动文本效果的具体代码,供大家参考,具体内容如下 效果图 实现方法 直接上代码 首先是一个自定义layout,继承自FrameLayout public class AnimationTextLayout extends FrameLayout { private static final String TAG = "AnimationTextLayout"; private List<String> tipList; private

  • Android实现文字滚动播放效果的代码

    在开发时,我们会遇到文字过长,TextView不能完全展示,但又不想文字换行展示,这样有时会影响美观.这时我们就需要文字滚动播放,让用户可以看到所有的文字. 话不多说,直接上代码: import android.content.Context; import android.util.AttributeSet; import android.widget.TextView; public class MarqueTextView extends TextView { public MarqueT

  • android开发教程之文本框加滚动条scrollview

    我们都知道EditText与TextView是Android的文本输入框和文本显示框,但是基于手机屏幕的大小因素,如果在需要输入较多文字或者显示较多内容的时候,手机屏幕是远远不够的,因此让文本框具有滚动条的功能是手机上必备的,下面介绍下如何加上滚动条.要加上滚动条,其实很简单,只需要在文本输入框或者文本显示框上面加上滚动条控件即可,该控件名字为ScrollView,以下我们对比下(以TextView举例). 复制代码 代码如下: //A.未加滚动效果 <TextView android:layo

  • Android使用kotlin实现多行文本上下滚动播放

    最近在项目中用到了上下滚动展示条目内容,就使用kotlin简单编写实现了一下该功能. 使用kotlin实现viewflipper展示textview的上下滚动播放 其中包含了kotlin的一些简单的使用 - 首先是在布局文件中如下代码: <ViewFlipper         android:id="@+id/viewFlipper"         android:layout_width="match_parent"         android:la

  • Android使用Kotlin和RxJava 2.×实现短信验证码倒计时效果

    本文介绍了Android使用Kotlin和RxJava 2.×实现短信验证码倒计时效果,分享给大家,具体如下: 场景:注册账号页面时,我们点击按钮发送验证码,在等待验证码时,界面会有倒计时提示,这此期间按钮不可点击.当倒计时结束时,按钮恢复. 实现代码 val timer:TextView = findViewById(R.id.textView) //这里的 timer 就是你要控制显示倒计时效果的 TextView val mSubscription: Subscription? = nul

  • Android Studio Kotlin代码和java代码相互转化实例

    1.java转成kotlin 方法1:快捷键:Ctrl+Shift+Alt+K 方法2:Code - Convert Java File To Kotlin File 2.kotlin转成java 1.Tools>Kotlin>Show Kotlin Bytecode 2.点击 Decompile 补充知识:Android Studio Kotlin插件的简单使用 1.新建一个Project "Kotlin" ,然后在app的build.gradle文件中添加配置,如图所示

  • Android studio kotlin代码格式化操作

    Android 转kotlin语言后,格式化代码,自动换行问题,可能让一大批强迫症难受死. 如果不想换行或者想自定义换行规则,自行配置即可. Android studio ->Preference->Code Style->kotlin ->Wrapping and Braces 如图,前括号后换行,去掉勾选就可立马看到效果. 也可以选择荧光色框选部分,直接不用此项设置,就可以去掉这个规则的所有选项. 补充知识:android studio如何测试kotlin代码 andorid

  • android 使用kotlin 实现点击更换全局语言(中日英切换)

    > 因为我的工作要用kotlin所以今天在这里给大家总结一下关于全局语言切换的kotlin语言实现实现,很简单,希望在这里可以帮助到有需要的同学,下面简单说一下实现步骤,会把运行截图放在最后< 注:在这里我要说一下,我知道kotlin不太普及,如果有的同学需要java版的,可以在通读一遍代码,了解了之后把kotlin转化为java,因为kotlin与java是互通的,代码的一些关键点,java语言该怎么写还怎么写,如果有不明白的可以留言 第一步:简单写一下选择语言的布局就好,会用到点击事件,因

  • Android Studio kotlin生成编辑类注释代码

    更新了AS 3.1.2之后,发现新建Kotlin类,类注释依然木有,没办法只有自己动手了. 方法很简单,编辑File Header就可以啦. 只需要编辑自己想要的模板就可以啦. /** * @Author ${USER} * @Date ${DATE}-${TIME} * @Email chrisSpringSmell@gmail.com */ 支持的动态命令不多,只有一些简单的命令. 新建类效果: 补充知识:Android Studio javadoc 生成注释文档 相信大家刚开始写代码的时候

  • Android结合kotlin使用coroutine的方法实例

    最近入了Android坑,目前还处于疯狂学习的状态,所以很久都没有写博客了.今天记录一个小代码片段,在Android上使用coroutine 的小例子. 由于我自己是做一个记账软件来学习的,我用了gRPC,最开始我是使用线程来做网络请求的: thread { // 网络请求代码 runOnUiThread { // 更新UI的代码 } } 今天把这一套全部重写成用coroutine. 首先coroutine得有个调度器,英文叫做 "Dispatchers",有这么几个: Dispatc

  • Android使用Kotlin API实践WorkManager

    WorkManager 提供了一系列 API 可以更加便捷地规划异步任务,即使在应用被关闭之后或者设备重启之后,仍然需要保证立即执行的或者推迟执行的任务被正常处理.对于 Kotlin 开发者,WorkManager 为协程提供了最佳的支持.在本文中,我将通过实践 WorkManager codelab 为大家展示 WorkManager 中与协程相关的基本操作.那么让我们开始吧! WorkManager 基础 当您需要某个任务保持运行状态,即使用户切换到别的界面或者用户将应用切换到后台,甚至设备

  • Android开发Kotlin实现圆弧计步器示例详解

    目录 效果图 定义控件的样式 自定义StepView 绘制文本坐标 Android获取中线到基线距离 效果图 定义控件的样式 看完效果后,我们先定义控件的样式 <!-- 自定义View的名字 StepView --> <!-- name 属性名称 format 格式 string 文字 color 颜色 dimension 字体大小 integer 数字 reference 资源或者颜色 --> <declare-styleable name="StepView&q

  • Android编程使WebView支持HTML5 Video全屏播放的解决方法

    本文实例讲述了Android编程使WebView支持HTML5 Video全屏播放的解决方法.分享给大家供大家参考,具体如下: 1)需要在AndroidManifest.xml文件中声明需要使用HardwareAccelerate, 可以细化到Activity级别,如果不需要的View可以声明不要用加速,但是需要在代码中做,具体如下: a. 如果要声明整个应用都要加速: 复制代码 代码如下: <application ... android:hardwareAccelerated ="tr

随机推荐