2

我看过以下帖子

他们都有类似的问题,有些人做了一些事情来解决这个问题,有些人实际上已经解决了。至于我的问题。我希望能够在键盘可见时滚动到键盘后面,而无需重新调整背景图像的大小。

我在我的清单中使用它

android:windowSoftInputMode="stateVisible|adjustResize"

它有效,但它重新调整了我的背景大小,所以我把它放在我onCreatefragment.

getActivity().getWindow().setBackgroundDrawableResource(R.drawable.twoglobe_line);

我没有设置背景,而是将其XML设置在Java. 这是我需要的实际解决方案。但是它似乎调用父Activity's窗口而不是相关fragment's窗口,我的屏幕看起来像这样

Container 1    |     Container 2
               |
           <---Image--->
               |
               |

所以背景图像被切掉了一半。所以我的问题是,我该如何解决这个问题?我将提供解决方案所需的任何代码。

4

1 回答 1

1

我相信你正在寻找的是

this.getView().setBackgroundDrawable()

getActivity() 获取整个活动的背景,而 getView 仅获取片段的视图。此处的文档http://developer.android.com/reference/android/app/Fragment.html#getView() 尽可能不要使用 getActivity()。即使对于 findViewById,最好使用 getView()。对于诸如上下文之类的东西,没有其他选择。希望这对你有用。没有项目设置来测试它,但我认为它会起作用。

于 2013-06-11T00:11:08.820 回答