1. ko5tik, 03.11.2010 #1
    ko5tik

    ko5tik Threadstarter Android-Experte

    Hallo Allle,

    Irgendwie komme ich nicht weiter. Ich habe einen SurfaceView und versuche darauf zu Malen.

    So deklariere ich es (workarea):
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
                 android:layout_width="fill_parent"
                 android:layout_height="fill_parent">
    
        <LinearLayout android:id="@+id/overlay"
                      xmlns:android="http://schemas.android.com/apk/res/android"
                      android:orientation="vertical"
                      android:layout_width="fill_parent"
                      android:layout_height="fill_parent"
                >
    
    
    
            <!-- display processing result -->
            <SurfaceView android:id="@+id/workarea"
                       android:layout_width="fill_parent"
                       android:layout_height="80dp"
                       android:layout_gravity="center"           
                       android:background="#ff00ff00"    
                 ></SurfaceView>
    
            <FrameLayout android:layout_width="fill_parent"
                         android:layout_height="fill_parent"
                         android:background="#00000000"
                    >
    
                <ImageView
                        android:id="@+id/scanarea"
                        android:layout_width="fill_parent"
                        android:layout_height="80dp"
                        android:src="@drawable/scanarea"
                        android:paddingLeft="5dp"
                        android:paddingRight="5dp"
                        android:layout_gravity="center"
                        >
                </ImageView>
    
            </FrameLayout>
    
        </LinearLayout>
    </FrameLayout>
    
    Und initialisiere es mit Callback im OnCreate:

    Code:
            final SurfaceView workAreaView = (SurfaceView) findViewById(R.id.workarea);
    
            workArea = workAreaView.getHolder();
            workArea.addCallback(this);
            workArea.setType(SurfaceHolder.SURFACE_TYPE_NORMAL);
    
    Dann mache ich von meinen Thread aus:
    Code:
                    Canvas c = null;
                    try {
                        System.err.println("locking canvas");
                        c = workArea.lockCanvas();
                        if (c != null) {
                            System.err.println("canvas:" + c.isOpaque());
                            // synchronized (mSurfaceHolder) {
                            // c.drawBitmap(backBuffer, 0, 0, paint);
                            c.drawARGB(255,255,0,0);
                            System.err.println("**************** drawn rect");
                        } else {
                            System.err.println("surface not ready");
                        }
    
                        // }
                    } finally {
                        // do this in a finally so that if an exception is thrown
                        // during the above, we don't leave the Surface in an
                        // inconsistent state
                        if (c != null) {
                            workArea.unlockCanvasAndPost(c);
                            System.err.println("********** unlocked and posted");
                        }
                    }
    

    Und als Ergebnis sehe ich nur den Grünen Hintergrund, und nicht die rote Fläche. Was mache ich dabei falsh?

    ( in meinen Colors Spiel mache ich auch nichts anderes, nur dort ist der SurfaceView im Vollbild )
     
  2. ko5tik, 03.11.2010 #2
    ko5tik

    ko5tik Threadstarter Android-Experte

Die Seite wird geladen...
Similar Threads - Problem mit SurfaceView Forum Datum
[ERLEDIGT] Problem mit Async Task und auszuführender Aufgabe Android App Entwicklung 02.05.2017
[ERLEDIGT] Probleme mit Wear Modul Android App Entwicklung 01.05.2017
[OFFEN] Probleme mit SearchView in ArrayAdapter Android App Entwicklung 28.04.2017
Probleme mit NFC File Transfer Android App Entwicklung 21.01.2017
Problematik mit der Ausgabe von SQL Inhalten (ljava.lang) Android App Entwicklung 23.11.2016
Problem mit Thread bei Galaxy S5 und S6(Edge) Android App Entwicklung 23.09.2016
Probleme mit Android-Studio Android App Entwicklung 07.08.2016
Problem mit Android Studio Android App Entwicklung 21.07.2016
[OFFEN] git-Problem in Android Studio (Windows) Android App Entwicklung Mittwoch um 08:19 Uhr
[OFFEN] WebView Probleme Android App Entwicklung 19.05.2017