gpt4 book ai didi

android - 错误膨胀类(自定义 View )

转载 作者:行者123 更新时间:2023-11-29 14:52:54 25 4
gpt4 key购买 nike

我正在尝试创建自定义编辑文本并卡在此处...

请看下面我的代码

public class MainActivity extends Activity {

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

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}


public static class MyEditText1 extends EditText{

Paint mPaint;




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

}

public MyEditText1(Context context, AttributeSet attrs) {
super(context, attrs);
mPaint=new Paint();
mPaint.setColor(Color.BLACK);


}

@Override
protected void onDraw(Canvas c){
super.onDraw(c);
int height=getHeight();
int width=getWidth();
int linespace=10;
int count=height/linespace;

for(int i=0;i<count;i++){
c.drawLine(0, i*linespace, width, i*linespace, mPaint);
}


}



}


}

MyEditText类是内部类

我在我的 xml 中将此 View 称为

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >



<com.example.customedittext.MainActivity.MyEditText1

android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:ems="10"
android:inputType="textNoSuggestions"/>


</RelativeLayout>

但应用程序在启动后立即强制关闭。但是当我将内部类作为 MyEditText.java 保存在一个单独的文件中时(并在 xml 中引用它)它工作正常..将它保存为什么问题内部类..即使我已将内部类设为静态?

最佳答案

因为你的 View 是一个内部类,你需要引用它与你的 XML 略有不同(注意 $ 符号):

com.example.customedittext.MainActivity$MyEditText1

关于android - 错误膨胀类(自定义 View ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13074557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com