返回顶部
首页 > 资讯 > 移动开发 >Android使用kotlin实现多行文本上下滚动播放
  • 834
分享到

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

2024-04-02 19:04:59 834人浏览 独家记忆
摘要

最近在项目中用到了上下滚动展示条目内容,就使用Kotlin简单编写实现了一下该功能。 使用kotlin实现viewflipper展示textview的上下滚动播放 其中包含了kot

最近在项目中用到了上下滚动展示条目内容,就使用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进行实现

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

--结束END--

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

本文链接: https://lsjlt.com/news/162341.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作