Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.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
Android 访问按钮';s通过其OnClick Listener进行线性布局_Android_Button_Android Linearlayout_Onclicklistener - Fatal编程技术网

Android 访问按钮';s通过其OnClick Listener进行线性布局

Android 访问按钮';s通过其OnClick Listener进行线性布局,android,button,android-linearlayout,onclicklistener,Android,Button,Android Linearlayout,Onclicklistener,我在线性布局中有几个按钮。两者都是动态创建的。是否有办法通过按钮访问线性布局?我将LinearLayoutsid设置为0或1。因此,我只希望按钮在LinearLayout等于1时起作用 代码: 因此,现在我将按钮添加到线性布局。我可以为按钮的OnClickListener执行类似操作吗: dynamicButtons.setOnClickListener( new View.OnClickListener() { public void onClick(View

我在
线性布局中有几个
按钮
。两者都是动态创建的。是否有办法通过
按钮访问
线性布局
?我将
LinearLayouts
id
设置为0或1。因此,我只希望按钮在
LinearLayout
等于1时起作用

代码:

因此,现在我将
按钮添加到
线性布局
。我可以为
按钮的
OnClickListener
执行类似操作吗:

dynamicButtons.setOnClickListener( 
    new View.OnClickListener()
    {
        public void onClick(View view)
        {
        if (dynamicButton.getParentView().getId()==1){ //When I click the Button, I want to access the LinearLayout the Button is in
            //do something
        }

    }
});

当然,这一行
dynamicButton.getParentView().getId()==1
是错误的。但是我如何才能访问
按钮的
线性布局?

您走对了。您所需要做的就是转换为线性布局

dynamicButtons.setOnClickListener( 
    new View.OnClickListener()
    {
        public void onClick(View view)
        {
          LinearLayout ll = (LinearLayout) dynamicButtons.getParent();
          if (ll.getId()==1){ //When I click the Button, I want to access the LinearLayout the Button is in
          //do something
        }

    }
});

没问题。快乐编码:)
dynamicButtons.setOnClickListener( 
    new View.OnClickListener()
    {
        public void onClick(View view)
        {
          LinearLayout ll = (LinearLayout) dynamicButtons.getParent();
          if (ll.getId()==1){ //When I click the Button, I want to access the LinearLayout the Button is in
          //do something
        }

    }
});