让android的TextView可以滚动
来源:互联网 发布:bim施工现场布置软件 编辑:程序博客网 时间:2024/04/30 17:23
- 让android的TextView可以滚动
我想要在一个文本视图里显示一段文本,但是文字太多,一屏显示不下。我需要让我的TextView可以滚动。我应该怎么做,这是我的代码。
final TextView tv = new TextView(this); tv.setBackgroundResource(R.drawable.splash); tv.setTypeface(face); tv.setTextSize(18); tv.setTextColor(R.color.BROWN); tv.setGravity(Gravity.CENTER_VERTICAL| Gravity.CENTER_HORIZONTAL); tv.setOnTouchListener(new OnTouchListener(){ public boolean onTouch(View v, MotionEvent e) { Random r = new Random(); int i = r.nextInt(101); if (e.getAction() == e.ACTION_DOWN) { tv.setText(tips[i]); tv.setBackgroundResource(R.drawable.inner); } return true; } }); setContentView(tv);
我要回答
4个回答
按赞数排序
- niangzhi 2012.09.26 13:17
- 已采纳
事实上你不需要使用ScrollView
只要在你的布局的xml文件中设置你的TextView的属性:
android:maxLines = "AN_INTEGER"android:scrollbars = "vertical"
Then use:
然后在你的代码中用:
yourTextView.setMovementMethod(new ScrollingMovementMethod())
它可以自由的滚动了。
- 鹳狸媛 但是事实上maxLines需要你输入一个任意的数,这个并不是对每个屏幕尺寸和字体大小都适用?我发现用ScrollView实现它很简单,意味着我不必添加任何扩展的XML属性或代码(就像设置移动方法)。
- 2 年多之前 回复
- Sueyexin 2012.09.26 14:01
所有的方法中真的有用的是setMovementMethod()。这是用LinearLayout的一个示例代码。
main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:id="@+id/tv1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/hello" /></LinearLayout>WordExtractTest.javapublic class WordExtractTest extends Activity { TextView tv1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv1 = (TextView)findViewById(R.id.tv1); loadDoc(); } private void loadDoc(){ String s = ""; for(int x=0;x<=100;x++){ s += "Line: "+String.valueOf(x)+"\n"; } tv1.setMovementMethod(new ScrollingMovementMethod()); tv1.setText(s); }}
- yizhenbeifeng 2012.09.26 14:51
这就是我完全用XML实现的
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ScrollView android:id="@+id/SCROLLER_ID" android:layout_width="fill_parent" android:layout_height="wrap_content" android:scrollbars="vertical" android:fillViewport="true"> <TextView android:id="@+id/TEXT_STATUS_ID" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0"/> </ScrollView></LinearLayout>
注意:
1)android:fillViewport="true"和android:layout_weight="1.0"将使得文本视图占据所有可用的空间。
2)当定义Scrollview,不要指定android:layout_height="fill_parent" 否则scrollview 不起作用!(就因为这个浪费了我一个小时的时间)
我赞成的观点:
为了能够在追加文本之后自动滚动到底部,用这个:
mTextStatus = (TextView) findViewById(R.id.TEXT_STATUS_ID);mScrollView = (ScrollView) findViewById(R.id.SCROLLER_ID);private void scrollToBottom(){ mScrollView.post(new Runnable() { public void run() { mScrollView.smoothScrollTo(0, mTextStatus.getBottom()); } });}
- 大招至胜 2015.01.15 10:26
textView.post(new Runnable() { @Override public void run() { // TODO Auto-generated method stub textView.append(line); final int scrollAmount = textView.getLayout().getLineTop(textView.getLineCount()) - textView.getHeight(); if (scrollAmount > 0) textView.scrollTo(0, scrollAmount); else textView.scrollTo(0, 0); } });
0 0
- 让android的TextView可以滚动
- 让textview可以滚动
- ScrollView嵌套TextView,让TextView可以滚动
- Android可以纵向滚动的textView
- android TextView不用ScrollViewe也可以滚动的方法
- android TextView不用ScrollViewe也可以滚动的方法
- android TextView不用ScrollViewe也可以滚动的方法
- Android Textview的滚动
- Android 设置一个TextView可以垂直滚动
- android 让TextView自带滚动条
- 如何让Android TextView内容滚动
- 安卓笔记-可以滚动的TextView
- 让TextView 有滚动条的效果
- 自定义可以滚动TextView
- Android TextView的双向滚动
- android TextView 的垂直滚动
- Android 滚动显示的 TextView
- Android金钱滚动效果-滚动的textView
- 在windows 下用 vs2010 开发第一个vlc程序
- GRE写作评分标准
- getComputedStyle、currentStyle的区别与用法
- delphi身份证验证
- 体验更低功耗的开源硬件平台-迅为4412开发板
- 让android的TextView可以滚动
- POJ 3617 Best Cow Line
- js高级编程-Bom
- Xcode6中进行Objective-C现代化的工具
- boost 1.51.0 在MAC系统上编译Android序列化静态库
- NSString [a compare:b] NSOrderedSame NSOrderedAscending NSOrderedDescending
- 我的第一个HTML5应用
- 连载三 奖学金文章更新 张文军 北京IOS第38期学员
- 二十岁出头的时候上,你一无所有,你拥有一切