博图文本切换行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了博图文本切换行相关的知识,希望对你有一定的参考价值。

文本切换(TextSwitcher)

1、代码:

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextSwitcher <span style="white-space:pre"> </span>//设置一个文本切换组件
android:id="@+id/mytextSwitcher"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextSwitcher>
<Button
android:id="@+id/but1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="显示当前时间" />
</LinearLayout>
MainActivity.java文件的内容
package com.example.textswitcher;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.R.anim;
import android.app.ActionBar.LayoutParams;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.TextSwitcher;
import android.widget.TextView;
import android.widget.ViewSwitcher.ViewFactory;

public class MainActivity extends Activity
private TextSwitcher TS = null;
private Button but = null;
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
super.setContentView(R.layout.main);
this.TS = (TextSwitcher)super.findViewById(R.id.mytextSwitcher);//找到文本切换组件
/*
* 只要是说想设置文本或图片的转换操作都必须写一个Factory实现功能
* 要进行文字的切换那么Factory中就要设置一个文本组件,要进行图片的切换就要设置一个图片组件
*/
this.TS.setFactory(new ViewFactoryImpl());
this.TS.setInAnimation(AnimationUtils.loadAnimation(this, anim.fade_in));//给文本切换组件设置动画效果
this.TS.setOutAnimation(AnimationUtils.loadAnimation(this, anim.fade_out));
this.but = (Button)super.findViewById(R.id.but1);
this.but.setOnClickListener(new OnClickListenerImpl());//给按钮设置监听器

private class OnClickListenerImpl implements OnClickListener

@Override
public void onClick(View v)
// TODO Auto-generated method stub
MainActivity.this.TS.setText("当前时间:" + new SimpleDateFormat("yyyy-hh-dd HH:mm:ss SSS")
.format(new Date()));//在文本切换组件上显示当前的时间


private class ViewFactoryImpl implements ViewFactory
//要想实现文本切换必须定义一个Factory进行操作
@Override
public View makeView()
// TODO Auto-generated method stub
/*
* 这里的TextView属于TextSwitcher下的子控件,当设置它的高度和宽度的时候也是相对于它的父类控件而言的
*/
TextView text = new TextView(MainActivity.this);
text.setLayoutParams(new TextSwitcher.LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));//给文本组件设置长度和高度
return text;



我感觉程序中的TextSwitcher与Factory中设置的文本组件的关系就好像是父亲与孩子的关系,父亲让孩子干什么孩子就得去干什么,在本程序中我感觉当 TextSwitcher要显示当前时间时,其实是Factory中的文本组件在显示时间。(个人观点仅供参考)
参考技术A 工具/材料:电脑、CAD。
第一步,打开电脑进入桌面,打开软件进界面。
第二步,打开软件进入后,打开相应的文档。
第三步,找到上方菜单栏格式-文字样式点击进入。
第四步,点击后弹出对话框找到效果-垂直,完成后点击应用即可。
第五步,设置完成后选择左边工具栏的文字命令。
第六步,绘制一个文本框输入文字后即可变成竖向文字。

以上是关于博图文本切换行的主要内容,如果未能解决你的问题,请参考以下文章

2 行文本 UIButton

Kivy 滚动浏览数千行文本

如何创建带有两行文本且第一行文本大于第二行的 UIButton?

css 溢出 - 只有 1 行文本

使用 CSS 调整换行文本的大小 [重复]

Android 12.0 Toast消息框上限为两行文本(超出显示省略号)并且在文本左边显示应用图标