Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';t从代码向XML布局添加视图_Java_Android_Layout_Android Edittext - Fatal编程技术网

Java Can';t从代码向XML布局添加视图

Java Can';t从代码向XML布局添加视图,java,android,layout,android-edittext,Java,Android,Layout,Android Edittext,我有这些代码: public class ContentEditText extends EditText { /* * Constructors */ public ContentEditText(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } public ContentEditText(Context context, AttributeSet at

我有这些代码:

public class ContentEditText extends EditText {
/*
 * Constructors
 */
public ContentEditText(Context context, AttributeSet attrs, int defStyle)
{
    super(context, attrs, defStyle);
}

public ContentEditText(Context context, AttributeSet attrs)
{
    super(context, attrs);
}

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

/*
 * Listener
 */
@Override   
protected void onSelectionChanged(int selStart, int selEnd)
{ 
    Toast.makeText(getContext(), "selStart is " + selStart + "selEnd is " + selEnd, Toast.LENGTH_LONG).show();
}   
}

我以为我用正确的方法将contentET添加到主布局中,但它不起作用,LogCat对变量contentET说“NullPointerException”,我不知道为什么。谁能告诉我哪里做错了?
谢谢

将您的代码更改为此,因为第一个调用应该是
setContentView
,在
super
之后。由于上述代码中的情况并非如此,因此您正在尝试访问布局,而不会使布局膨胀,从而引发
nullpointer
异常

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

仍然是相同的错误:NullPointerException,并且Logcat指向以下行:setContentView(mainLayout);啊,对不起,我没有仔细阅读你的答案,应该是setContentView(R.layout.your_xml_文件);,它工作得很好。谢谢:)
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.your_xml_file);           
    initLayout();
}