程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> canvas-當點擊按鈕時,如何執行 Canvas.drawText 事件?

canvas-當點擊按鈕時,如何執行 Canvas.drawText 事件?

編輯:編程綜合問答
當點擊按鈕時,如何執行 Canvas.drawText 事件?

當點擊按鈕時,如何執行繪制文本 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);
}

最佳回答:


DrawView 是從哪裡繼承的?為什麼不使用一個簡單的 xml 布局,在這個布局中你可以放置一個 TextView,並在 OnClickListener 中使用 setVisible。
示例代碼:

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。
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>
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved