ScrollView を持つフラグメントがあります。表示するものが他にもある場合は、ユーザーに何か (矢印?) を表示して、スクロールしてさらに表示できることをユーザーに知らせたいと思います。
それを行う方法はありますか?
ScrollView を持つフラグメントがあります。表示するものが他にもある場合は、ユーザーに何か (矢印?) を表示して、スクロールしてさらに表示できることをユーザーに知らせたいと思います。
それを行う方法はありますか?
ユーザーが上下にスクロールしようとした場合だけでなく、スクロールビューのスクロールバーを常に表示することができます。
android:fadeScrollbars="false"
ScrollView XMLの定義に追加することでそれを行うことができます
私の知る限り、このためのすぐに使える実装はありません。スクロールが下までスクロールしたかどうかに応じて、 のScrollView
内側にを配置し、 (矢印)RelativeLayout
の可視性を変更することができます。ImageView
ScrollView
しばらく前に、私はあなたと同様のニーズがありました. 私が望んでいたのは、アクティビティが表示されたときに、自動的に下から上にスクロールして、利用可能なアイテムが他にもあることをユーザーが確認できるようにすることでした。私が行った方法は、ViewTreeObserver を使用することでした。私がそれを手に入れた方法の例を以下に示します。
private ScrollView mScroll;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_history);
mScroll = (ScrollView) findViewById(R.id.scroll_view);
ViewTreeObserver vto = mScroll.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
mScroll.getViewTreeObserver().removeGlobalOnLayoutListener(this);
int scrollHeight = mScroll.getChildAt(0).getMeasuredHeight();
mScroll.scrollTo(0, scrollHeight);
}
});
}
@Override
protected void onResume() {
super.onResume();
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
mScroll.smoothScrollTo(0, 0);
}
}, 800);
}
誰かの役に立てば幸いです;)
これを試して :
@Override
public void onWindowFocusChanged (boolean hasFocus)
{
if(child_of_scrollView.getMeasuredHeight() > oScrollView.getMeasuredHeight())
//Show some arrow image or something you like to show
}