android开发中,点击一个按钮,周围出现三个按钮

android开发中,点击一个按钮,周围出现三个按钮,第1张

先把3个按钮隐藏,点击了按钮A,就显示3个按钮

我试了下,可以的

testxml:

<xml version="10" encoding="utf-8">

<RelativeLayout xmlns:android="

    android:id="@+id/relativeLayout1"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent" >

    <Button

        android:id="@+id/btA"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_centerVertical="true"

        android:layout_centerHorizontal="true"

        android:text="按钮A" />

    <Button

        android:id="@+id/btB"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_centerVertical="true"

        android:layout_toLeftOf="@id/btA"

        android:text="按钮B" />

    <Button

        android:id="@+id/btD"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_centerVertical="true"

        android:layout_toRightOf="@id/btA"

        android:text="按钮D" />

    <Button

        android:id="@+id/btC"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_above="@+id/btA"

        android:layout_toLeftOf="@+id/btD"

        android:text="按钮C" />

</RelativeLayout> 

 

 TestActivity:

package comexampleandroidtest;

import androidappActivity;

import androidosBundle;

import androidviewView;

import androidviewViewOnClickListener;

import androidwidgetButton;

import androidwidgetToast;

public class TestActivity extends Activity {

    private Button btA;

    private Button btB;

    private Button btC;

    private Button btD;

    private boolean isVisible = true;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        superonCreate(savedInstanceState);

        setContentView(Rlayouttest);

        btA = (Button) findViewById(RidbtA);

        btB = (Button) findViewById(RidbtB);

        btC = (Button) findViewById(RidbtC);

        btD = (Button) findViewById(RidbtD);

        btBsetVisibility(ViewINVISIBLE);

        btCsetVisibility(ViewINVISIBLE);

        btDsetVisibility(ViewINVISIBLE);

        btAsetOnClickListener(new OnClickListener() {

            @Override

            public void onClick(View v) {

                if (isVisible) {

                    btBsetVisibility(ViewVISIBLE);

                    btCsetVisibility(ViewVISIBLE);

                    btDsetVisibility(ViewVISIBLE);

                    isVisible = false;

                } else {

                    btBsetVisibility(ViewINVISIBLE);

                    btCsetVisibility(ViewINVISIBLE);

                    btDsetVisibility(ViewINVISIBLE);

                    isVisible = true;

                }

            }

        });

    }

}

返回上一个activity只需要调用 finish() 方法(前提是你跳转的时候没有关闭上个activity)

当然,这也必须要通过点击事件来实现

1写个BaseActivity实现 OnClickListener

public abstract class BaseActivity extends AppCompatActivity implements OnClickListener{}这样每个继承它的activity都会自动重写

@Override

public void onClick(View view) {

switch(viewgetid){

    }

}

给每一个需要点击事件的view 写个监听 viewsetOnClickListener(this);

2使用框架 比如xUtil等 不推荐

3使用butterknife

4使用rxjava实现的rxbus

5使用EventBus 不推荐

方法,在viewpager的adapter里面有一个方法可以获取到当前的view,如下:

1 2 3 4 5 6 7 8 9 10 private View mCurrentView; @Override public void setPrimaryItem(ViewGroup container, int position, Object object) { mCurrentView = (View)object; } public View getPrimaryItem() { return mCurrentView; }

ViewPager的adapter通过setPrimaryItem方法设置当前显示子view

将其保存下来就可以在后面通过自定义的getPrimaryItem来获取到当前子view了。

装监视器:把view装进list,list加载到pageAdapter,给viewpager设置监听,监听的就是全部view,要实现这种轮播(广告栏效果),就是一句关键代码viewPagersetCurrentItem(msgarg1);,利用handler和thread,每隔几秒改变item的下标。

viewPagersetAdapter(new MyAdapter());

viewPagersetOnPageChangeListener(onPageChangeListener);

在布局器中将按钮都加进去,然后再代码中根据情况来设置按钮是否可见:

setVisibility(ViewINVISIBLE)

给按钮添加一个listener,就可以得到点击事件。

用Button完不成你的需求,我认为5个Button的设计可以改为ListView或者GridView来做,这样好布局,按下其中一个Item就刷新一遍。

这样问题二就不存在了,你不需要考虑了,按下其中一个Item之后,TextView和ListView就刷新了。

以上就是关于android开发中,点击一个按钮,周围出现三个按钮全部的内容,包括:android开发中,点击一个按钮,周围出现三个按钮、android项目多个返回按钮点击事件怎样用一个方法解决、android:viewpager里如何获取其子界面的按钮并为其添加监听器啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9660517.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存