android - 如何创建 Activity View

标签 android android-activity

所以我有这个扩展 Activity 的类(class)。但是我想在屏幕上画一些东西,所以我需要制作一个 Canvas 。但是我不能扩展 View ,因为它已经是一个 Activity 了。我该怎么办?

我的 Activity 有 onClick 方法,我用它来做一些事情,但我想做的是在调用 onClick 方法时绘制一个简单的图像。

谢谢。

public class Stuff extends Activity implements OnClickListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
(...)
}

@Override
public void onClick(View arg0) {
(...)
}

最佳答案

第 1 步:通过扩展 View 创建一个类:

public class DrawView extends View {  
    public float currentX=40;  
    public float currentY=50;  

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

    @Override  
    protected void onDraw(Canvas canvas) {        
        super.onDraw(canvas);   
        Paint paint=new Paint();  
        paint.setColor(Color.RED);  
        canvas.drawCircle(currentX, currentY, 25, paint);  
    }  

} 

第 2 步:在您的资料 Activity 中:

public class Stuff extends Activity implements OnClickListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);  
setContentView(R.layout.main);  
LinearLayout root=(LinearLayout) findViewById(R.id.root); 
(...)
}

@Override
public void onClick(View arg0) {
//DRAW YOUR VIEW ON BUTTON CLICK
final DrawView drawView=new DrawView(this);  
drawView.setMinimumWidth(300);  
drawView.setMinimumHeight(500);
drawView.currentX=200;  
drawView.currentY=200;  
drawView.invalidate(); 
root.addView(drawView);
(...)
}

第 3 步: 您的 Activity main.xml 为:

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

最后尝试在 google 上搜索,然后再在这里提问。谢谢

关于android - 如何创建 Activity View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11269227/

相关文章:

android - 从外部 Activity 调用 Activity

android - 在 eclipse 中使用 MAT 并解决内存泄漏

android - 在 android 上从 r.raw 读取文本文件

android - Android 中的 Webview 声音

android - 如何关闭 VideoView Activity(目前必须按两次返回)

java - 如何使用按钮从一个 Activity move 到另一个 Activity ?

android - 为什么不推荐使用 TabActivity(原因)?

android - 无法在 Eclipse 中创建 Android 项目

android - 将 XML 属性转换为样式条目的 Eclipse 快捷方式

android - Galaxy Nexus 4.0.2 在 WebView.onTouchEvent 上出现异常