相关疑难解决方法(0)

xml布局中的自定义视图

我通过创建SurfaceView类的子类创建了自己的视图.

但是我无法弄清楚如何从xml布局文件中添加它.我当前的main.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"
    >

<View
    class="com.chainparticles.ChainView"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" 
    />


</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

编辑

更多信息

我的观点看起来像这样

package com.chainparticles;
public class ChainView extends SurfaceView implements SurfaceHolder.Callback {
    public ChainView(Context context) {
        super(context);
        getHolder().addCallback(this);
    }
// Other stuff
}
Run Code Online (Sandbox Code Playgroud)

它的工作原理如下:

ChainView cview = new ChainView(this);
setContentView(cview);
Run Code Online (Sandbox Code Playgroud)

但是当尝试从xml中使用它时没有任何反应.

xml layout android

14
推荐指数
2
解决办法
2万
查看次数

如何使用视图扩展类的canvas进入活动类?

我创建了一个类:

public class TestCanvas extends View {

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

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        Paint paint = new Paint();
        paint.setColor(Color.RED);

        canvas.drawText("kal", 0, 100, paint);
        canvas.save();
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我从活动中调用该类:

public class TestActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TestCanvas tcanvas=new TestCanvas();

        frameLayout=(FrameLayout)findViewById(R.id.frameLayout1);
        frameLayout.addView(tcanvas);   
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我想将canvas插入活动类并设置为ImageView.我该怎么做?

android android-canvas

3
推荐指数
1
解决办法
9370
查看次数

标签 统计

android ×2

android-canvas ×1

layout ×1

xml ×1