简单的自定义视图问题
Posted
技术标签:
【中文标题】简单的自定义视图问题【英文标题】:Simple Custom View Problem 【发布时间】:2011-02-21 08:47:04 【问题描述】:编辑下午 4:33 022111
我忘记包含我的 xml 代码。我太傻了。
现在我尝试了超类的attrs,但它仍然没有帮助......
我尝试搜索所有内容,但无济于事。
我的代码非常非常简单。
以下内容包括我从创建项目时获得的初始代码更改的所有内容。
Thumbknightview.java
package com.google.www.Thumbknight;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
public class ThumbKnightView extends View
public ThumbKnightView(Context context)
super(context);
public ThumbKnightView(Context context, AttributeSet attrs)
super(context, attrs); // edit 4:33pm 022111
YoAndroid.java
package com.google.www.Thumbknight;
import android.app.Activity;
import android.os.Bundle;
public class YoAndroid extends Activity
/** Called when the activity is first created. */
//private ThumbKnightView tnv;
float x;
float y;
float lastx;
float lasty;
float maxspeed = 8;
int ipi = -1;
int firstfinger;
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
main.xml
我知道这对于专家来说可能看起来很愚蠢,但对我来说,它给了我 3 多个小时的搜索和阅读时间。请对我放轻松。
【问题讨论】:
您的问题到底是什么? ThumbKnightView 不显示吗?如果是这种情况,请打开 main.xml 布局并将那里的视图类从 View 更改为 yourpackage.ThumbKnightView。 【参考方案1】:您需要指定更多详细信息 - 您的问题是什么?此外,过去的布局 XML 的相关部分。
这样的代码看起来几乎是无害的。唯一要记住的是,当您将构造函数调用链接到超类时,也要传递AttributeSet
。您还必须将此 AttributeSet
传递给您的子视图的构造函数。
为了。例如:如果你正在创建一个按钮,你会说new Button(activityContext,attrs);
public ThumbKnightView(Context context, AttributeSet attrs)
super(context,attrs);
【讨论】:
以上是关于简单的自定义视图问题的主要内容,如果未能解决你的问题,请参考以下文章