android ScrollView 中一个 TextView 显示

达达拉 2011-12-20 11:54:31
我需要做到一个效果,当 TextVIew 足够高时,ScrollView 有滚条,而这个滚条一直保持在最下面,而不是最上面。
现在我做的效果一直在上面,没法保持在最下面,需要手动拖动到下面。
...全文
199 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
达达拉 2011-12-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 jjyyhema 的回复:]

引用 3 楼 xs3627575 的回复:

引用 2 楼 jjyyhema 的回复:

当TextView改变的时候,滑一下ScrollView就好了,用scrollView.scrollBy(x, y),或者scrollView.scrollTo(x, y)。

请问这个 x , y 是多少,跟什么有关啊?我的 activity 上面好多控件,这个 TextView 也只是其中一……
[/Quote]
不错,这个可以实现,谢谢啊!
jjyyhema 2011-12-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xs3627575 的回复:]

引用 2 楼 jjyyhema 的回复:

当TextView改变的时候,滑一下ScrollView就好了,用scrollView.scrollBy(x, y),或者scrollView.scrollTo(x, y)。

请问这个 x , y 是多少,跟什么有关啊?我的 activity 上面好多控件,这个 TextView 也只是其中一小块,所以 x ,y 怎么确定值。
这些空间都是……
[/Quote]
帮你查了段代码,自己试下喽

//scroll是里层的ScrollView, inner就是那个TextView
public static void scrollToBottom(final View scroll, final View inner) {

Handler mHandler = new Handler();

mHandler.post(new Runnable() {
public void run() {
if (scroll == null || inner == null) {
return;
}

int offset = inner.getMeasuredHeight() - scroll.getHeight();
if (offset < 0) {
offset = 0;
}

scroll.scrollTo(0, offset);
}
});
}
达达拉 2011-12-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jjyyhema 的回复:]

当TextView改变的时候,滑一下ScrollView就好了,用scrollView.scrollBy(x, y),或者scrollView.scrollTo(x, y)。
[/Quote]
请问这个 x , y 是多少,跟什么有关啊?我的 activity 上面好多控件,这个 TextView 也只是其中一小块,所以 x ,y 怎么确定值。
这些空间都是放在 scrolView 中,scrollView 中还有个 ScrollView,这个 ScrollView 中放的是 TextView 。
jjyyhema 2011-12-20
  • 打赏
  • 举报
回复
当TextView改变的时候,滑一下ScrollView就好了,用scrollView.scrollBy(x, y),或者scrollView.scrollTo(x, y)。
达达拉 2011-12-20
  • 打赏
  • 举报
回复
在线等答案。

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧