1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. newpageart, 23.11.2011 #1
    newpageart

    newpageart Threadstarter Android-Hilfe.de Mitglied

    Hallo liebe Forumsgemeinde!

    Ich habe ein selbst erstelltes ImageView in dem ein Koordinatsystem gezeichnet werden soll. Dies wird mit Hilfe von Canvas gezeichnet.
    In diesem ImageView soll der Benutzer jetzt einen oder mehrere Punkte setzen können. Dies wird über das "onTouch"-Event gelöst.
    Nun würde gerne die Koordinaten noch zusätzlich in einem TextView anzeigen. Diese Daten sollen dann anschliessend noch weiterverarbeitet werden.
    Leider fällt mir keine Lösung ein, wie ich die Daten in das TextView bekomme. Hätte eventuell jemand einen Lösungsansatz?

    ImageView :
    Code:
    public class MyCustomView extends ImageView implements OnTouchListener {
        Bitmap bitmap;
        Canvas bitmapCanvas;
        Paint paint = new Paint();
    
        public MyCustomView(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
            init();
        }
        public MyCustomView(Context context, AttributeSet attrs) {
            super(context, attrs);
            init();
        }
        public MyCustomView(Context context) {
            super(context);
            init();
        }
        public void init() {
            this.setOnTouchListener(this);
            setFocusable(true);
            setFocusableInTouchMode(true);
            
            paint.setColor(Color.WHITE);
            paint.setAntiAlias(true);
            paint.setStyle(Style.FILL_AND_STROKE);
            
            int width = 200; 
            int height = 200; 
            bitmap = Bitmap.createBitmap (width,height,Config.RGB_565);
            
            bitmapCanvas = new Canvas();
            bitmapCanvas.setBitmap(bitmap);
            bitmapCanvas.drawColor(Color.CYAN);
            
            bitmapCanvas.drawText("Test", 10, 10, paint);
            
            bitmapCanvas.drawLine(0, 100, 200, 100, paint);
            bitmapCanvas.drawLine(100, 0, 100, 200, paint);
            this.setImageBitmap(bitmap);
        }
        @Override
        protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
        }
        
        public boolean onTouch(View view, MotionEvent event)
        {
            bitmapCanvas.drawCircle(event.getX(), event.getY(), 5, paint);
            invalidate();
            return true;
        }
    }
    
    xml-Datei:
    Code:
    <?xml version="1.0" encoding="utf-8"?>
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_height="fill_parent" android:orientation="vertical" android:layout_width="fill_parent">
            <de.Koordinaten.MyCustomView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
            <TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textView1" android:text="TextView"></TextView>
            <Button android:text="Reset" android:id="@+id/btnReset" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
        </LinearLayout>
    
    Vielen Danke und schöne Grüße,
    Tom
     
  2. v Ralle v, 23.11.2011 #2
    v Ralle v

    v Ralle v Android-Lexikon

    Du musst die TextViews der ImageView übergeben. Anders wird es momentan nicht funktionieren.

    Eleganter würde ich es finden (meine persönliche Ansicht), wenn du den TouchListener extrahierst und an den die ImageView und TextView übergibst. So ist das weggekapselt (Logik von View).
     
  3. newpageart, 24.11.2011 #3
    newpageart

    newpageart Threadstarter Android-Hilfe.de Mitglied

    DANKE!!!
    Da hast du natürlich vollkommen recht. Ich hab den TouchListener jetzt direkt mit in das Activity geschrieben und übergebe von dort die Koordinaten. Irgendwie wollte ich wohl das Pferd von hinten aufzäumen. Jetzt funktionieret es ;o)
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] Widget zeigt keine ImageView an. Android App Entwicklung 18.09.2017
[OFFEN] Bild per Intent an ListView übergeben und anzeigen Android App Entwicklung 13.08.2017
[ERLEDIGT] Logdateien der eigenen App Android App Entwicklung 15.06.2017
[ERLEDIGT] Der Weg zur ersten eigenen App Android App Entwicklung 26.03.2017
[ERLEDIGT] App stürzt neuerdings beim anzeigen des eigenen Standorts ab Android App Entwicklung 19.03.2017
[ERLEDIGT] Jedem Benutzer eine eigene ID zuweisen? Android App Entwicklung 16.03.2017
Datenbank- Zugriff über ContentProvider/Resolver oder direkt von eigener App aus? Android App Entwicklung 27.11.2016
schleife für image view animations Android App Entwicklung 24.10.2016
Imageview vs. Samsung S7 Edge Android App Entwicklung 16.10.2016

Users found this page by searching for:

  1. imageview koordinate

    ,
  2. imagesc koordinaten übergeben

    ,
  3. android imageview onclick koordinaten

Du betrachtest das Thema "Koordinaten aus eigenem ImageView übergeben" im Forum "Android App Entwicklung",