Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在单击按钮[kotlin]时显示linearLayout时向下滚动线性布局_Java_Android_Kotlin_Scrollview_Android Linearlayout - Fatal编程技术网

Java 如何在单击按钮[kotlin]时显示linearLayout时向下滚动线性布局

Java 如何在单击按钮[kotlin]时显示linearLayout时向下滚动线性布局,java,android,kotlin,scrollview,android-linearlayout,Java,Android,Kotlin,Scrollview,Android Linearlayout,我在一个滚动视图中有一组文本视图和编辑文本表单,在同一个滚动视图中的表单下方也有一个线性布局,在这个线性布局中有一组垂直文本视图。最初,当用户按下“添加更多信息”按钮时,线性布局的可见性消失,该按钮位于该线性布局的正上方,然后布局可见性可见。这是工作正常,如预期,但我想要的是,当线性布局变得可见,然后滚动视图应该向下滚动,以便用户可以看到扩展数据。我尝试了所有的方法,但没有任何方法可以帮助我。 请帮我解决这个问题。下面是ShowHideLayout方法。 需要帮助吗 fun showHideLa

我在一个滚动视图中有一组文本视图和编辑文本表单,在同一个滚动视图中的表单下方也有一个线性布局,在这个线性布局中有一组垂直文本视图。最初,当用户按下“添加更多信息”按钮时,线性布局的可见性消失,该按钮位于该线性布局的正上方,然后布局可见性可见。这是工作正常,如预期,但我想要的是,当线性布局变得可见,然后滚动视图应该向下滚动,以便用户可以看到扩展数据。我尝试了所有的方法,但没有任何方法可以帮助我。 请帮我解决这个问题。下面是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")
    }
}

您可以在xml文件中的ExampleLinearLayout之前添加另一个scrollview来解决此问题,并在单击按钮时调用此scrollview,以便在线性布局出现时向下滚动。但这可能不是最佳做法。 您的代码如下所示

<Scrollview
     android:id = @+id/scrollViewLayout
       .....
       ....>
    <LinearLayout....>

<--Remaining view-->

</LinearLayout>
       </Scrollview>
    fun showHideLayout() { 
if(linearLayoutAddMoreInfoExpand.visibility == GONE){ 
linearLayoutAddMoreInfoExpand.visibility = VISIBLE
mTextViewAddMoreInfo.setText("Close Add More Info")
scrollViewLayout.post(Runnable { scrollView.fullScroll(ScrollView.FOCUS_DOWN)  })