私はこの作業を行う方法が見つかりません。フォアグラウンドでの表示のリンク先
私のアプリケーションには、多くの子ビューを持つ2つのFrameLayoutsがあります(簡単にするためImageViewsと仮定します)。
私の問題は、タッチを通過させて下にあるFrameLayout(およびその子)に達するように、TOPおよびすべての子供にFrameLayoutが必要なことです。ポインタイベントのようなもの:TOPフレームレイアウトのすべてのイメージビューにHTMLのnoneは適用されません。
FrameLayoutとその子の両方でsetClickable(false)とsetEnabled(false)を試しましたが、無効な子(ImageViewなど)をクリックした場合、タッチは基になるImageViewには届きません下の子FrameLayout)
次のコードは、FrameLayoutとその子を無効にするための最善の試みです(mSlideLayoutは親FrameLayout、レイヤーは各画像ビューの子です)。私は何かを逃している?
/** Create the layers structure into the layout */
void create_layers() {
Context context=getActivity();
mSlideLayout.removeAllViews();
for (FunqLayer layer:mLayers) {
if (layer!=null) {
View v=layer.init_internal(context, mSlideLayout); // constructs the child layer, suppose it's an ImageView
if ((v!=null) && (mIsMuteTouches)) {
v.setEnabled(false);
v.setClickable(false);
// this should obviously let touches pass through but it doesnt :(
}
}
}
if (mIsMuteTouches) {
// also do the same in the FrameLayout itself with no luck :(
mSlideLayout.setEnabled(false);
mSlideLayout.setClickable(false);
}
}