0

drawTextボタンをクリックする方法は?setContentView(R.layout.main)ボタンをクリックしたときにボタンを表示してテキストを描画するにはどうすればよいですか? 私はそれを作ることができません。以下はテキストを描画するための私のコードです。

public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     drawView = new DrawView(this); 
     setContentView(drawView); 
}
public DrawView(Context context) { 
     super(context); 
     textpaint.setColor(Color.WHITE);
}
public void onDraw(Canvas canvas) {
     canvas.drawText("Testing", 20, 55, textpaint);
}

4

1 に答える 1

0

DrawViewは何から継承しますか?setVisibleTextViewを配置して内部で使用する単純なxmlレイアウトを使用してみませんかOnClickListener

サンプルコード:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.my_view);
    Button myButton = (Button) findViewById(R.id.my_button);
    final MySurfaceView surfaceView = (MySurfaceView) findViewById(R.id.mysurface);
    myButton.setOnClickListener(new OnClickListener() {
        @Override
        public boolean onClick(View v) {
            // here you should change the position and the text you want to write
            // like surfaceView.setCoordinates(x, y);
            // and surfaceView.setTextToDraw("myText");
            return true;
        }
    });
}

もちろん、独自のSurfaceViewを作成する必要があります。例としてそれを行う方法:http ://www.droidnova.com/playing-with-graphics-in-android-part-ii,160.html

xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <org.mypackage.MySurfaceView android:id="@+id/mysurface"
        android:layout_width="300dp"
        android:layout_height="300dp" />
    <Button android:id="@+id/my_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Push it real good!" />
</LinearLayout>
于 2010-09-10T08:51:27.820 に答える