活动加载时按钮默认选择问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了活动加载时按钮默认选择问题相关的知识,希望对你有一定的参考价值。

**

我的应用程序中有两个活动。单击主页按钮时,第二个活动正常启动。在第二个活动中有三个按钮: - 按钮1,按钮2,按钮3.因此,我希望当第二个活动开始时,按钮1自动激活并显示该工作。

**

答案

第一步:创建一个名为“button_selector.xml”的按钮选择器xml,以便在打开第二个活动时显示活动状态

 <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true"><shape  android:shape="rectangle">
            <corners android:bottomLeftRadius="7dp" android:bottomRightRadius="7dp" android:topLeftRadius="7dp" android:topRightRadius="7dp" />

            <solid android:color="@color/button_active_color" />
        </shape></item>

    <item android:state_focused="true"><shape android:shape="rectangle">
            <corners android:bottomLeftRadius="7dp" android:bottomRightRadius="7dp" android:topLeftRadius="7dp" android:topRightRadius="7dp" />

            <solid android:color="@color/button_active_color" />
        </shape></item>

    <item><shape android:shape="rectangle">
            <corners android:bottomLeftRadius="7dp" android:bottomRightRadius="7dp" android:topLeftRadius="7dp" android:topRightRadius="7dp" />

            <solid android:color="@color/button_inactive_color" />
        </shape></item>
</selector>

第二步:在第二个活动按钮1中单击我们上面定义的监听器设置按钮选择器

 button1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                button1.setBackgroundResource(R.drawable.button_selector);
            }
        });

第三步:(使按钮处于活动状态)在onCreate()初始化button1之后的第二个活动findViewById()方法中将其称为

  button1.performClick();
另一答案

创建一个drawable,将其应用于您的按钮android:background make button 1 android:enabled="false"

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/pink" android:state_enabled="false"/>
    <item android:drawable="@color/white" android:state_enabled="true"/>
    <item android:drawable="@color/white"/>
</selector>

在您的活动setOnClickListener()所有按钮。每当第二个活动开始时,运行按钮1任务。

    int lastSelectedViewId;

    @Override
    public void onClick(View view) {
        view.setEnabled(false);
        if (lastSelectedViewId != 0)
            findViewById(lastSelectedViewId).setEnabled(true);
        lastSelectedViewId = view.getId();

    }

以上是关于活动加载时按钮默认选择问题的主要内容,如果未能解决你的问题,请参考以下文章

用于数据加载的 Android 活动/片段职责

Android:单击按钮时默认选项卡式活动不会启动

导航菜单和在android中的选择性片段上添加按钮

导航抽屉活动:在按钮单击时从片段移动到片段

OnDetach/onAttach 片段重新创建片段活动

如何设置主活动中显示的默认片段?