0

私は次のようなレイアウトを持っています:

<LinearLayout id="@+id/parent" clickable="true">
  <ViewPager />
</LinearLayout>

親のクリックリスナー。ただし、クリック イベントには応答しません。ビューページャーがそれらを取るようです。親にクリックイベントを処理させる方法はありますか?

ありがとう

4

1 に答える 1

-1
final View myview2;
View view=(View) myViewPager.findViewById(position);
myview2 = (View) ((ViewGroup) view).getParent();


if (myview2 instanceof LinearLayout) {
Log.d("instanceof", "linearLayout");
}

ビューをinstanceofとして取得する場合は、LinearLayoutクリックリスナーを追加してください。http://developer.android.com/reference/android/view/ViewParent.html#getParent ()myview2

の詳細については、こちらを参照してください。getParent();

がルートビューの場合LinearLayoutは、次を使用できます。

View view=findViewById(R.id.main);
View v1 = view.getRootView();

あなたがViews内部について心配しているならViewPager、あなたはに変更することができgetParent()ますgetChildAt(0)

そしてあなたはまた使うことができます:

myLinearLayout.bringToFront();

于 2013-03-20T04:12:35.667 に答える