【问题标题】:How to make scroll up in list view when keyboard is appear出现键盘时如何在列表视图中向上滚动
【发布时间】:2013-07-19 03:59:59
【问题描述】:

我想知道在 android 中有什么方法可以像 question 那样做。我使用了ListView 并在其中添加了EditText。我遇到了与上述问题相同的问题。我在android中找不到答案。

谢谢。

【问题讨论】:

  • “我在安卓中找不到答案。”通过搜索找到第三个链接:stackoverflow.com/questions/10599451/…
  • 感谢您的链接。我的视图中有页脚栏。当我更改为您的链接时,页脚栏位于键盘上方。我想在键盘出现时隐藏页脚栏。

标签: android android-listview android-scroll


【解决方案1】:

在你的清单中,试试这个

<activity android:name=".MyActivity" android:label="@string/app_name" android:windowSoftInputMode="adjustPan">

</activity>

你需要的是 android:windowSoftInputMode="adjustPan"

试试吧!

【讨论】:

  • 我有一个 actionBar,这个方法将它滚动到屏幕外的某个地方。
  • 我在listview中有editText,行为很奇怪,滚动时,editText中的文本消失了..
【解决方案2】:

我在键盘重叠列表视图时遇到了同样的问题,但 android:windowSoftInputMode="adjustPan" 对我不起作用。

但是,android:windowSoftInputMode="adjustResize" 做到了。

<activity android:name=".MyActivity" android:label="@string/app_name" android:windowSoftInputMode="adjustResize">

【讨论】:

    【解决方案3】:

    LilstView 类的smoothScrollToPosition 方法

    【讨论】:

      【解决方案4】:

      如果它是一种短信列表视图,这可以通过在清单中添加这一行来实现:

      android:windowSoftInputMode="adjustResize"
      

      并添加一个触摸监听器来编辑视图:

      myEditView.setOnTouchListener(new OnTouchListener() {
              public boolean onTouch(View v, MotionEvent event) {
      
                      myView.postDelayed(new Runnable() {
                          @Override
                          public void run() {
                              myListView.setSelection(myAdapter.getCount());
                          }
                      }, 500);        
      
                  return false;
              }
          });
      

      @Override
      protected void onResume()
      {
      
          myEditView.postDelayed(new Runnable() {
                      @Override
                      public void run() {
                          myListView.setSelection(myAdapter.getCount());
                      }
                  }, 500);    
          super.onResume();
      }
      

      【讨论】:

        猜你喜欢
        • 2012-02-01
        • 1970-01-01
        • 2018-05-21
        • 2015-11-29
        • 1970-01-01
        • 1970-01-01
        • 2014-08-20
        • 2012-01-10
        相关资源
        最近更新 更多