Android 从另一个布局充气按钮

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

我无法从另一个布局中为按钮充气。 以下是具有ListView的第一个代码:

@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中。要包含布局,您必须使用。

谢谢您的回复,但我仍然收到相同的错误:/