Non trovo il modo di farlo funzionare.fare una visualizzazione in primo piano click-through
La mia applicazione ha 2 FrameLayout con molte viste figlio (supponiamo ImageViews per semplicità), impilati uno sull'altro.
Il mio problema è che ho bisogno del FrameLayout su TOP e di TUTTI I SUOI BAMBINI per far passare i tocchi attraverso di essi, raggiungendo il FrameLayout sottostante (ei suoi figli). Qualcosa come eventi puntatore: nessuno in HTML applicato a tutte le immagini dei framelayout TOP.
Ho provato setClickable (false) e setEnabled (false) sia su FrameLayout sia sui suoi figli, ma se faccio clic su un figlio disabilitato (ad esempio un ImageView), il tocco non raggiungerà un ImageView sottostante (ovvero child of the bottom FrameLayout)
Il seguente codice è il mio miglior tentativo di disabilitare FrameLayout ei relativi figli (mSlideLayout è il frame principale padre, il livello è rappresentato da ciascun figlio vista immagine). Mi sto perdendo qualcosa??
/** 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);
}
}