Android 从另一个布局充气按钮
我无法从另一个布局中为按钮充气。 以下是具有ListView的第一个代码:Android 从另一个布局充气按钮,android,android-layout,Android,Android Layout,我无法从另一个布局中为按钮充气。 以下是具有ListView的第一个代码: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.list_item_produto); btnAddNoCarrinho.setOnClickListener(new View.O
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list_item_produto);
btnAddNoCarrinho.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Testing", Toast.LENGTH_SHORT).show();
}
});
这是我的另一个布局,带有需要充气的按钮
<ImageButton
android:id="@+id/btnAddNoCarrinho"
android:layout_width="50dp"
android:layout_height="30dp"
android:layout_marginStart="310dp"
android:layout_marginTop="3dp"
android:onClick="onClick"
android:background="@android:color/holo_green_dark"
android:clickable="true"
android:focusable="true"
android:src="@drawable/ic_addproduct">
</ImageButton>
错误为:原因:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“void android.widget.ImageButton.setOnClickListener(android.view.view$OnClickListener)”
有没有办法扩大布局?提前感谢。您需要实例化按钮:
ImageButton btnaddnocarinho=(ImageButton)findViewById(R.id.btnaddnocarinho)代码>
所以整个代码是:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list_item_produto);
ImageButton btnAddNoCarrinho = (ImageButton) findViewById(R.id.btnAddNoCarrinho);
btnAddNoCarrinho.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Testing", Toast.LENGTH_SHORT).show();
}
});
再次检查您的btnAddNoCarrinho
按钮是否位于您在setContentView
中正在膨胀的布局文件中。图像按钮应该是活动视图层次结构的一部分。Android将只能找到属于列表项目\u produto.xml的一部分或包含在其中的视图
如果图像按钮位于其他文件中,则需要将其包含在列表\u item\u produto.xml中。要包含布局,您必须使用。谢谢您的回复,但我仍然收到相同的错误:/