Android,如何在单击edittext时以编程方式滚动滚动滚动视图

Android,如何在单击edittext时以编程方式滚动滚动滚动视图,android,android-edittext,scrollview,ontouchlistener,Android,Android Edittext,Scrollview,Ontouchlistener,当ı单击编辑文本时,由于键盘的原因,用户无法看到我的按钮 所以我想,当用户点击edittext,scrollview时,绝对能以平滑的效果转到上面 我的第一个问题是,我应该用哪位听众来回答这个问题OnClick,OnFocus,OnTouch等 我尝试了这个代码块,但需要双击才能滚动它。首先单击打开键盘,然后单击滚动至scrollview 我的第二个问题有人知道这个问题吗?谢谢你的帮助 scrollView = (ScrollView) findViewById(R.id.scrollview

当ı单击编辑文本时,由于键盘的原因,用户无法看到我的按钮

所以我想,当用户点击
edittext
scrollview
时,绝对能以平滑的效果转到上面

我的第一个问题是,我应该用哪位听众来回答这个问题
OnClick
OnFocus
OnTouch

我尝试了这个代码块,但需要双击才能滚动它。首先单击打开键盘,然后单击滚动至
scrollview

我的第二个问题有人知道这个问题吗?谢谢你的帮助

 scrollView = (ScrollView) findViewById(R.id.scrollview);
    et_space.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            scrollView.smoothScrollTo(0, 500);
            return false;
        }
    });
希望这对你有帮助

scrollView.post(new Runnable() {
    @Override
    public void run() {
        sv.scrollTo(5, 10);
    }
});
希望这对你有帮助

scrollView.post(new Runnable() {
    @Override
    public void run() {
        sv.scrollTo(5, 10);
    }
});

按如下方式修改代码:

et_space.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN: {
                        scrollView.smoothScrollTo(0, 500);
                        return false;
                    }
                }
                return true;
        }
    });

按如下方式修改代码:

et_space.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN: {
                        scrollView.smoothScrollTo(0, 500);
                        return false;
                    }
                }
                return true;
        }
    });

您可以在EditText下的同一位置添加小部件。例如名为“btn_show_keyboard”的ImageView

然后在btn\u show\u keyboard.onClick()方法中执行此方法

在此softinputmode中设置目标活动

android:windowSoftInputMode="adjustResize"

试试这些,希望有帮助。

您可以在EditText下的同一位置添加一个小部件。例如名为“btn\u show\u keyboard”的图像视图

然后在btn\u show\u keyboard.onClick()方法中执行此方法

在此softinputmode中设置目标活动

android:windowSoftInputMode="adjustResize"

试试这些,希望有帮助。

试试这个
在EditText的OnClickListener中使用这些代码

scrollview.scrollBy(0,scrollview.getBottom());

尝试此
在EditText的OnClickListener中使用此代码

scrollview.scrollBy(0,scrollview.getBottom());

谢谢你们的回答但我自己解决了问题

首先我想说你必须使用“OnFocusListener”,然后你必须使用这样的处理程序

现在,当我点击我的编辑文本;键盘打开,同时滚动视图到顶部:)


谢谢你们的回答但我自己解决了问题

首先我想说你必须使用“OnFocusListener”,然后你必须使用这样的处理程序

现在,当我点击我的编辑文本;键盘打开,同时滚动视图到顶部:)


我之前已经试过了,它也需要双击,无论如何谢谢:)我之前已经试过了,它也需要双击,无论如何谢谢:)我在我的问题中写道;我在问题中写道:“滚动视图绝对可以达到上面的平滑效果。”;“scrollview转到上面,效果绝对平滑。”此解决方案不会弹出键盘此解决方案不会弹出键盘