导言:我们在用到ScrollView时,有时候需要它的显示区高度可以调整,比如一段话放到ScrollView中,当这段话只有一行时,我们设置ScrollView的高度为20;有两行时,我们设置ScrollView的高度为40;有三行或更多行时,设置ScrollView的高度为60(超过三行后,自动出滚动条)

方法:将ScrollView放到一个LinearLayout中,将ScrollView的高度设置成match_parent,在代码中动态设置LinearLayout的高度,达到ScrollView高度动态通过Java代码设置的效果。

效果图:

点击前

点击后

代码:

MainActivity.java:

public class MainActivity extends AppCompatActivity {

Button btn;

LinearLayout ll;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

btn = (Button) findViewById(R.id.btn);

ll = (LinearLayout) findViewById(R.id.ll);

btn.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) ll.getLayoutParams();

int llHeight = ll.getHeight();

if (llHeight == 80) {

lp.height = 120;

} else {

lp.height = 80;

}

ll.setLayoutParams(lp);

}

});

}

}

布局文件:

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical">

android:id="@+id/btn"

android:layout_width="wrap_content"

android:layout_height="48dp"

android:layout_gravity="center"

android:text="调整" />

android:id="@+id/ll"

android:layout_width="match_parent"

android:layout_height="80dp">

android:id="@+id/sv"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="#dddddd">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_margin="10dp"

android:text="aaaaaaaaaaaaaa\naaaaaaaaaaaaaaaa\naaaabbbbbbbbbbbbb\nbbbbbbbbbbbbbb\nbbbbbbbcccccccccccccccc\nccccccccccccc\nccccccccccccccccccccccccccccccc

eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" />

————————————————

版权声明:本文为CSDN博主「weixin_38125090」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_38125090/article/details/79135443

android 应用区高度,Android创建显示区高度可以调整的ScrollView相关推荐

  1. android 获取对话框对象,Android 基本Dialog和自定义Dialog

    Android 基本Dialog和自定义Dialog Dialog类是对话框的基类,但你应该避免直接实例化Dialog ,可以使用子类 1.AlertDialog 此对话框可以显示标题,最多三个按钮, ...

  2. 多次点击android版本出现棒棒糖,android – 为前棒棒糖设备创建循环显示

    首先,这是与 Create circular reveal for pre-Lollipop devices (Android)不同的问题 我正在使用那里提到的库来创建Circular Reveal, ...

  3. android技术篇(三)解密data区

    android技术篇(二)解密data区 其实data加密和system上锁是相同的性质,不过data加密了部分文件还是可以拷贝进去的,不过里面的数据加密了的是不可修改的,甚至有些连查看都不允许! 解 ...

  4. Android系统8.0及以上开启Service必须创建显示“XX应用正在运行”通知问题处理

    背景: Android系统8.0及以上,开启Service必须使用startForegroundService(Intent intent)方法,对应的Service则必须设置startForegro ...

  5. WSA安卓子系统最新版下载直链:微软已更新至1.8.32822.0版本适用于Android的Windows子系统无需切换美区和Beta通道

    WSA安卓子系统最新版直连下载链接:微软已更新至V1.8.32822.0版本适用于Android的Windows子系统无需切换美区和Beta通道 ​ 01 引言 优爱酷在10月份微软刚刚发布安卓子系统 ...

  6. [Android] AlertDialog获取网上天气并显示各城市天气

    最近帮同学做android百度地图,其中涉及到定位城市天气功能.才知道自己技术非常的一般,还有很多东西需要学习,同时需要回归到我研究生的方向--数据挖掘.同时又见识到了一位叫柳峰的大神,推荐大家去看看 ...

  7. Android百度地图定位APP,显示出当前位置坐标

    Android百度地图定位APP,显示出当前位置坐标 官网配置百度地图 通过CMD命令获取SHA1 在百度的官网里面创建一个应用 Android配置 显示地图即定位 配置 AndroidManifes ...

  8. 5 控件固定大小_【聊技术】在Android中实现自适应文本大小显示

    本周的聊技术话题和大家说说如何在Android中实现自适应文本大小显示. 想象一下,在布局中,通常显示文本的区域大小是固定的,但是文本长度并不总是固定的.比如列表中的文章标题.界面下方的按钮文本等等. ...

  9. Android 学习笔记四:创建工具栏按钮

    原文:http://blog.csdn.net/lihongxun945/article/details/48951199 前面我们已经可以在一个Activity中添加一些按钮之类的组件.由于手机的屏 ...

最新文章

  1. ewebeditor 5.2 列目录漏洞
  2. python list 取重复次数
  3. 周鸿祎告诫员工:勿盲目把360看成巨头 不四处出击!
  4. 究竟有多少假代购,在2亿多海淘用户市场里浑水摸鱼?
  5. 2019-11-06 Win10 Texlive 2019+LyX的安装
  6. Qt Creator寻找
  7. Android面试题算法之二叉树
  8. AX2009 的EP开发要点
  9. php获取微信图片访问权限,微信小程序访问图片出现403,图片防盗链的解决办法...
  10. android添加购物车动画、天气应用、渐变状态栏、文件选择器等源码
  11. VC/MFC程序开启关闭和打开自己或其他软件,更改窗口类
  12. C++中Set的使用
  13. ios pan手势滑动消失动画_IOS UIPanGestureRecognizer手势使用及识别状态UIGestureRecognizerState...
  14. inittab 分析
  15. 南阳理工ACM954--N!
  16. java 生成pdf 分页_java根据模板动态生成PDF实例
  17. 一百块组装可玩LOL的电脑
  18. 京东实习笔试——拍卖
  19. 小狗钱钱 的读书笔记
  20. 如何让 PPT 中的表格更美观?

热门文章

  1. 【连载】如何掌握openGauss数据库核心技术?秘诀五:拿捏数据库安全(2)
  2. 2021年11月国产数据库排行榜:openGauss闯入前三,Kingbase流行度与日俱增,TDengine厚积薄发
  3. 嘉年华回顾丨 尚博带你了解腾讯 TXSQL如何 赋能腾讯云分布式数据库 CynosDB
  4. 520送书,8本你爱的技术书籍免费领!
  5. 高薪必备|Redis 基础、高级特性与性能调优
  6. 干货分享丨从MPG 线程模型,探讨Go语言的并发程序
  7. 华为云PB级数据库GaussDB(for Redis)解析第二期:Redis消息队列Stream的应用探讨
  8. 云小课 | 需求任务还未分解,该咋整!项目管理Scrum项目工作分解的心酸谁能知?
  9. 物联网通信技术最全科普!你一定要了解的NB-IoT
  10. Flask开发天气查询软件,带你掌握pipenv的使用与手机Termux下的部署