为了账号安全,请及时绑定邮箱和手机立即绑定

如何向下滚动线性布局当线性布局在按钮上可见时单击[kotlin]

如何向下滚动线性布局当线性布局在按钮上可见时单击[kotlin]

婷婷同学_ 2022-06-23 16:16:56
我在滚动视图中有一堆文本视图和编辑文本表单,并且在这个线性布局中的相同滚动视图内的表单下方也有一个线性布局,其中有一堆垂直的文本视图。当用户按下“添加更多信息”时,最初线性布局的可见性消失了,它就在这个线性布局的上方,按钮然后布局可见性是可见的。这按预期工作正常,但我想要的是当线性布局变得可见时,滚动视图应该向下滚动,以便用户可以看到扩展数据。我尝试了所有但没有什么可以帮助我。请帮我解决这个问题。下面是 ShowHideLayout 方法。需要帮忙fun showHideLayout() {    if (linearLayoutAddMoreInfoExpand.visibility == GONE) {        linearLayoutAddMoreInfoExpand.visibility = VISIBLE        mTextViewAddMoreInfo.setText("Close Add More Info")        scrollView.post(Runnable {        scrollView.fullScroll(ScrollView.FOCUS_DOWN)            //scrollView.scrollTo(0,scrollView.bottom)        })       // scrollView.setDescendantFocusability(ViewGroup.FOCUS_BEFORE_DESCENDANTS);        scrollView.scrollTo(0,scrollView.bottom)        //scrollView.smoothScrollBy(R.id.linearLayoutAddMoreInfoExpand,R.id.scrollBottom)    } else if (linearLayoutAddMoreInfoExpand.visibility== VISIBLE) {        linearLayoutAddMoreInfoExpand.visibility = GONE        mTextViewAddMoreInfo.setText("+ Add More Info")    }}
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

您可以在 xml 文件中的 exapandLinearLayout 之前添加另一个滚动视图来解决此问题,并在单击按钮时调用此滚动视图,这样无论何时您的线性布局都会向下滚动。但这可能不是最佳实践。您的代码将如下所示


<Scrollview

     android:id = @+id/scrollViewLayout

       .....

       ....>

    <LinearLayout....>


<--Remaining view-->


</LinearLayout>

       </Scrollview>

在 Java 中的 addmoreinfo 按钮上单击调用此滚动视图,如下所示:-


    fun showHideLayout() { 

if(linearLayoutAddMoreInfoExpand.visibility == GONE){ 

linearLayoutAddMoreInfoExpand.visibility = VISIBLE

mTextViewAddMoreInfo.setText("Close Add More Info")

scrollViewLayout.post(Runnable { scrollView.fullScroll(ScrollView.FOCUS_DOWN)  })


查看完整回答
反对 回复 2022-06-23
  • 1 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信