Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.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 如何删除自定义视图并重新排列线性布局_Android_Android Activity - Fatal编程技术网

Android 如何删除自定义视图并重新排列线性布局

Android 如何删除自定义视图并重新排列线性布局,android,android-activity,Android,Android Activity,首先,我将解释我的情景 我有一个线性布局的活动,我正在使用自定义视图扩展该线性布局。在自定义视图中,我有一个删除按钮来删除特定的子对象 我知道要删除视图,我必须在自定义视图的按钮中添加onClick侦听器。但我不确定的是,如何从onClick侦听器的父视图中删除该视图 我正在从存储在共享首选项中的项填充线性布局。因此,我想首先通过删除我正在单击的特定自定义视图的字符串来更新共享首选项。但我不知道如何重新填充线性布局,因为函数位于父活动中 我是一个完全的android新手。提前谢谢 更新 我将使场

首先,我将解释我的情景

我有一个线性布局的活动,我正在使用自定义视图扩展该线性布局。在自定义视图中,我有一个删除按钮来删除特定的子对象

我知道要删除视图,我必须在自定义视图的按钮中添加onClick侦听器。但我不确定的是,如何从onClick侦听器的父视图中删除该视图

我正在从存储在共享首选项中的项填充线性布局。因此,我想首先通过删除我正在单击的特定自定义视图的字符串来更新共享首选项。但我不知道如何重新填充线性布局,因为函数位于父活动中

我是一个完全的android新手。提前谢谢

更新 我将使场景更简单一点

我有一个带有两个ImageButton的自定义视图-更新和删除

如果单击“删除”按钮,则应从线性布局中删除自定义视图

如果我单击update imagebutton,则应该使用customview中的文本作为参数来调用承载Linearlayout的活动的函数


我怎样才能做到这一点。我尝试了很多方法,但都失败了:-(

我终于找到了答案:

对于第一个要求,即删除视图,我使用了:

LinearLayout parentLyt = (LinearLayout) RecentSearch.this.getParent();
parentLyt.removeView(RecentSearch.this);
非常感谢皮尤斯·古普塔(@Piyush)

对于第二个选项,要访问托管活动,我使用
getContext()
并将其转换为我的活动类,然后调用该方法


感谢每一位回复者。

您可以通过parent.removeView(childview);method.Use GONE和Visible属性删除视图,因为我不想隐藏该条目。我获得了删除方法。谢谢@piyush gupta