Нет простого способа сделать это без дальнейшей работы. Поработав немного, у меня есть кое-что, что может вам помочь.
git bisect start master f9d5924
for rev in $(git rev-list f9d5924..master --merges --first-parent); do
git rev-list $rev^2 --not $rev^
done | xargs git bisect skip
Это начинает git bisect с f9d5924
как ваш хороший коммит и master
как ваш плохой коммит. Затем он находит предков с правой стороны каждого коммита слияния, которые не находятся на левой стороне. Он передает этих предков в git bisect skip
, чтобы пропустить их. Однако, когда он выяснит, какой коммит плохой, он покажет все возможные пропущенные коммиты из плохого коммита слияния. как в следующем
$ git bisect good
There are only 'skip'ped commits left to test.
The first bad commit could be any of:
0622204625d8817c5d8fd1a2a68b3aa91f2dcdf9
0c771566b9e77e3bdc0a66a7404c8eae9f321a68
5098b44f43f84b213eaab110073a6acd26a5cc02
8b05a808d5e15852fbddaa529ba241fdac8ff693
b0c755c3fa57e3c8d527e76fae38bc9925c01353
We cannot bisect more!
В этом случае b0c755c3fa57e3c8d527e76fae38bc9925c01353
был коммит слияния, на котором он не прошел.
Примечание: Это не будет работать, если у вас есть слияние осьминога (слияние, объединяющее более двух ветвей).
Android автоматически обрабатывает прозрачность представлений и чертежей (включая изображения PNG), поэтому описанный вами сценарий (частично прозрачный ImageView
перед галереей
]), безусловно, возможно.
Если у вас возникли проблемы, они могут быть связаны либо с макетом, либо с вашим изображением. Я воспроизвел макет, который вы описываете, и успешно добился желаемого эффекта. Вот точный макет, который я использовал.
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gallerylayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Gallery
android:id="@+id/overview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/navigmaske"
android:background="#0000"
android:src="@drawable/navigmask"
android:scaleType="fitXY"
android:layout_alignTop="@id/overview"
android:layout_alignBottom="@id/overview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</RelativeLayout>
Обратите внимание, что я изменил родительский RelativeLayout
на высоту и ширину fill_parent
, что обычно требуется для основного Activity. Затем я выровнял верх и низ ImageView
по верхнему и нижнему краю галереи
, чтобы обеспечить его центрирование перед ним.
Я '
Видимая галерея изменяет видимость, благодаря чему галерея перекрывает перекрытие других представлений. пример приложения Home содержит несколько хороших примеров этой техники.
Также обратите внимание на FrameLayout
, вот как приложение Галерея камеры реализует наложение кнопок масштабирования.
Да, это возможно. Однако проблема состоит в том, чтобы правильно их разметить. Самый простой способ сделать это - создать AbsoluteLayout, а затем поместить два изображения в нужное место. Для прозрачного png не нужно делать ничего особенного, за исключением того, что он добавляется позже в макет.
Если вы хотите добавить свой экран наложения на макет, вы можете создать пользовательский линейный макет и получить контроль над рисованием и ключевыми событиями. Вы можете посмотреть мой учебник "Наложение на макет Android". http://prasanta-paul.blogspot.com/2010/08/overlay-on-android-layout.html