作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
如何在我的 Activity 布局中处理我不知道它有多长的长文本?
我在 TextView 中有此文本,当它太长时,它会覆盖我的按钮。
最佳答案
您是在谈论 Textview 还是 Button?如果它是一个 Textview,你可以使用像下面这样的 marque textview。它会自动滚动以便显示所有文本
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:ellipsize="marquee"
android:lines="1"
android:fadingEdge="horizontal"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:text="Your Looooooooooooooooooooooooooooooooooooooooong text!"
android:textColor="#000"
android:textSize="15dp" />
在你的代码中,
textview.setSelected(true);
textview.setEllipsize(TruncateAt.MARQUEE);
textview.setHorizontallyScrolling(true);
textview.setSingleLine(true);
textview.setLines(1);
如果你想要一个可展开的 Textview,做这样的事情。它有一个按钮来展开/折叠 textview。
在 xml 中,
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="sdfsdfsdfsfasfdsfgdfgdfsgsdfgsdfgsdfgsdgsdgdsgdsgsdfgdsgdsfgsdfgsdgsdfgsdfgdsfgsdgdsgfsdgfsdgsdfgdsgdsfgdsfgdsfgsdghjghjghjghjghjfg"
android:textAppearance="?android:attr/textAppearanceMedium" />
</RelativeLayout>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/relativeLayout1"
android:text="Button" />
</RelativeLayout>
在代码中,
boolean checkflag = true;// declare it as public
final RelativeLayout rl=(RelativeLayout)findViewById(R.id.relativeLayout1);
Button b=(Button)findViewById(R.id.button1);
final TextView text=(TextView)findViewById(R.id.textView1);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if(checkflag==true)
{
text.setSingleLine(true);
checkflag=false;
}
else
{
text.setSingleLine(false);
checkflag=true;
}
}
});
关于Android:如何处理长文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16791617/
本文使用第一人称来介绍Redis 一、概述 Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于
这个问题已经有答案了: 奥 git _a (12 个回答) 已关闭 7 年前。 我正在为一个类项目创建一个正则表达式解析器,但我遇到了一个不知道如何解决的问题。每当遇到带括号的组时,都应该向 grou
我在玩简单的牛轧糖和十字游戏时遇到问题,我试图设置获胜条件,在击中三个位置/ block 时,它会显示一条消息,声明您已赢得游戏并禁用所有其他位置/ block 但是我的行为很奇怪,例如,如果您尝试通
我是一名优秀的程序员,十分优秀!