12

私の研究は私を行き詰まりに追いやった。

明らかにビューがあるアクティビティがあります。

ビューが画面上のコンテキストでユーザーに表示されるかどうか、または画面の境界外にあるかどうかを確認する方法は複数あります。

しかし、ここで別の状況があります: 相対的なレイアウトがあり、あるビューが意図的に別のビューに重なっている場合、またはアクティブなポップアップ ウィンドウがある場合です。

ビューが表示されているかどうかを確認するために使用されるメソッド (getLocationOnScreen、getLocalVisibleRect、getHitRect、getDrawingRect を含む) は、ビューが別のものと重なっているという事実にもかかわらず、ビューが画面上に表示されているかのように値を返します。ビューがユーザーに表示されるかどうかを確認します。

とにかくそれを確認することはありますか?

4

2 に答える 2

-3

メソッドを使用できますview.isShown()。このメソッドは、ビューの可視状態を返しますが、結果は真のビューが可視です。

于 2013-10-09T10:22:58.030 に答える
-4

これを試すことができます

  if (myView.getVisibility() == View.VISIBLE) {
  // Its visible
  } else {
  // Either gone or invisible
  }

それが役に立てば幸い。

于 2013-10-09T10:13:10.457 に答える