Мне нужно иметь прозрачное изображение, наложенное поверх реального изображения. Я хочу, чтобы пользователь увидел. Изображения будут сохранены на SD-карте. Я видел много учебников по этому поводу, но они всегда, похоже, не соответствуют тому, как мне получить два изображения. Или, может быть, я просто пропустил это. Во всяком случае, вот мой макетAndroid Dynamic Transparent Image Overlay
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gallerylayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/visible_image"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/colormap_overlay"
android:background="#FF000000"
android:scaleType="fitXY"
android:layout_alignTop="@id/visible_image"
android:layout_alignBottom="@id/visible_image"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</merge>
и вот мой код:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ctx = getApplicationContext();
setContentView(R.layout.imagepage);
String image_overlay = Environment.getExternalStorageDirectory() + "/" + s(R.string.APP_NAME) + "/overlay.jpg";
String visible_image = Environment.getExternalStorageDirectory() + "/" + s(R.string.APP_NAME) + "/visible.jpg";
ImageView image = (ImageView)findViewById(R.id.visible_image);
BitmapFactory.Options options = new BitmapFactory.Options();
Bitmap bm = BitmapFactory.decodeFile(visible_image, options);
image.setImageBitmap(bm);
ImageView overlayimage = (ImageView)findViewById(R.id.colormap_overlay);
Bitmap bm2 = BitmapFactory.decodeFile(image_overlay);
overlayimage.setAlpha(0);
overlayimage.setImageBitmap(bm2);
}
Я уверен, что моя ошибка в моем коде.
Редактирование 1 Я провел некоторое тестирование, и похоже, что макет xml в порядке. Я могу показать видимое изображение самостоятельно, но когда я показываю второе изображение (прозрачное изображение), все, что я получаю, это пустой черный экран.
Чтобы показать второе изображение, позвольте мне просто вызвать setImageBitmap() второй раз? Я начинаю думать, что мне нужно сделать что-то еще.
добавлена дополнительная информация в Edit1 – MrGibbage
измененная компоновка и изображение на их собственный тег android-layout и андроид-изображения. –
тег merge doen't вообще не работает в моем xml, приложение не запускается. я нашел ответ здесь http://stackoverflow.com/questions/14718028/android-how-to-add-transparent-image-over-another-image – steveh