Chcę przechwycić zawartość ImageView za pomocą DrawingCache. Napisałem poniższy kod.getDrawingCache() zawsze zwraca wartość null
iv1 = (ImageView)findViewById(R.id.iv1);
iv2 = (ImageView)findViewById(R.id.iv2);
iv1.setDrawingCacheEnabled(true);
Bitmap myScreenshot = iv1.getDrawingCache();
iv2.setImageBitmap(myScreenshot);
Ale dostaję tylko jeden obraz na ekranie. Później poznałem myScreenshot ma wartość null
Widziałem wiele postów dotyczących tego samego problemu, ale brak odpowiedniego rozwiązania.
Myślałem, że jakieś uprawnienia musimy dodać w manifeście? lub uprawnienia root wymagane do osiągnięcia tego? Pomóż mi w rozwiązaniu tego problemu.
Dodałem iv1.buildDrawingCache(); przed getDrawingCache(). nie używać –
czy sprawdziłeś, czy iv1 ma obraz po uruchomieniu aplikacji. Określ także, gdzie dokładnie dzwonisz do swojego kodu. Możesz wywoływać go przed inicjalizacją widoków – aqs
tylko w pliku xml daje Android: src dla iv1. Kod, który tu napisałem, jest po metodzie setContentView (R.layout.main); w onCreate() Czy to jest poprawne? –