gpt4 book ai didi

android - 将 Switch 小部件添加到 ActionBar 并响应更改事件

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:14:43 26 4
gpt4 key购买 nike

请问如何在 ActionBar 中添加 Switch widget 并处理点击事件或切换更改事件。

现在我可以在 ActionBar 中给 Switch 充气,但无法响应更改事件。我在 main.xml 中添加了以下内容。

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.MainActivity" >

<item
android:id="@+id/toggleservice"
android:actionViewClass="android.widget.Switch"
android:showAsAction="ifRoom"
android:title="@string/toggle_service"/>

</menu>

我想在用户点击开关并更改其状态时启动一项服务。非常感谢任何帮助。

最佳答案

您需要调用MenuItem.getActionView , 这是一个例子:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate your Menu
getMenuInflater().inflate(R.menu.your_menu, menu);

// Get the action view used in your toggleservice item
final MenuItem toggleservice = menu.findItem(R.id.toggleservice);
final Switch actionView = (Switch) toggleservice.getActionView();
actionView.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// Start or stop your Service
}
});
return super.onCreateOptionsMenu(menu);
}

关于android - 将 Switch 小部件添加到 ActionBar 并响应更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22918812/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com