Frage

Ich versuche, eine benutzerdefinierte ImageView meines main.xml hinzuzufügen, aber wenn ich das Programm beginnen, es schließt mit einem Zwang schließen.

XML:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:background="@drawable/background" >

     <test.testpkg.CustomImageView
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:layout_gravity="center_vertical"
          android:src="@drawable/bg"/>

</LinearLayout>

Java:

package test.testpkg;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.widget.ImageView;

public class CustomImageView extends ImageView {

    public CustomImageView(Context context) {
        super(context);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
    }
}

Auch wenn ich das Programm in Debugger starten, nachdem der FC ich dies nur erhalten: Link-Text

War es hilfreich?

Lösung

Debugger ist nutzlos, wenn Sie nicht den Quellcode von Android angeschlossen haben. Außerdem ... es ist sinnvoller, die logcat Ausgabe zu liefern. Wie auch immer, ich glaube, Sie einen der Konstrukteure fehlen. Versuchen Sie folgendes:

public class CustomImageView extends ImageView {

 public CustomImageView(Context context) {
  super(context);
  // TODO Auto-generated constructor stub
 }

 public CustomImageView(Context context, AttributeSet attrs) {
        super(context, attrs);
 }
 // rest of your code....
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top