问题标签 [android-switch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10814 浏览

android - Switch in adapter for a ListView

I have a ListView with an adapter which layout has a Switch, so every item in the lists has a switch.

I want to use this code:

But I don't know WHERE to use it: In the Adapter class or in the List Containing class, and how could I do for knowing what item am I modifying when I toggle that switch, so I can modify it's properties.

Edit: This is the Adapter class with the method implemented. It runs everytime the method getView() is called, and not when it's supposed to run(When a switch is toggled), and Logs appear in the logcat but the object which switch is toggled is not modified, when I scroll down and scroll up, the switch goes back to its original state:

0 投票
2 回答
6849 浏览

android - SwitchCompat 未在 Android 5.0 棒棒糖模拟器上显示拇指图像

我阅读了有关SwitchCompat在 Android 5.0 中实现 Switch 小部件的新功能。我尝试使用相同的方法,但我看不到可绘制的拇指图像,如下图所示。

在此处输入图像描述

我的 XML 代码如下,

对于上述布局,我能够在预览设计(eclipse 中的图形布局选项卡)中看到拇指图像,但是当我运行我的代码时,我看不到图像。

预览设计 在此处输入图像描述

这是我得到的例外

java.lang.NullPointerException:尝试boolean android.graphics.drawable.Drawable.getPadding(android.graphics.Rect)在空对象引用上调用虚拟方法“”

请问有人可以帮忙解决问题吗?

0 投票
10 回答
28273 浏览

android - onCheckedChanged 自动调用

我在 recyclerview 中有一个开关,从 DB 检索数据后,数据显示在 recyclerview 中。当 recyclerview 打开时,我读取 DB,如果 DB 中的字段为“Y”,则启用开关,否则禁用开关。现在的问题是 onCheckedchanged 监听器也被调用,我希望只有在用户手动设置开关时才调用 onCheckedChanged。

打开下面的recyclerview时执行:

ViewHolder 类:

刚刚打开 recyclerView 时调用的 OncheckedChanged 方法:

在布局文件中:

0 投票
4 回答
1447 浏览

android - 垂直居中两个开关

我想像使用 textviews 一样将两个开关居中,但我尝试了所有可能的选项但没有成功。

这是代码的简短版本:

截屏

0 投票
1 回答
167 浏览

android - android Switch没有以编程方式切换

我正在尝试以编程方式将开关切换回关闭状态,但是我遇到了问题。

我已经尝试同时使用 myswitch.setischecked(false) 和 myswitch.toggle 并且它们都将开关保持在当前状态,但将背景从蓝色更改为灰色,因此 android 认为开关已关闭,但显示并未反映这一点.

这是我的代码

还有其他人因此受苦吗?

编辑 - 在玩了之后,我发现改变我的设备的方向可以解决问题,我的开关包含在一个片段中,所以片段的重绘似乎可以纠正它,现在只需要弄清楚如何以编程方式重绘!

0 投票
2 回答
725 浏览

android - 以编程方式更改 Android Switch 小部件高度

我正在使用以下代码以编程方式创建开关:

我该如何改变屏幕上实际开关的高度(不是文本高度,ON/OFF 开关本身的高度)

我试过了

但似乎没有任何效果。

0 投票
1 回答
1631 浏览

java - 自定义 SwitchPreference 不保存值

当我访问 PreferenceScreen 时,我注意到我的自定义开关已关闭。然后我打开它并重新启动应用程序。我回到 PreferenceScreen,开关又关闭了。当我使用默认的 SwitchPreference 时,不会发生这种情况。我可以按照我想要的方式自定义 SwitchPreference,所以唯一的问题是开关值没有保存。我有四个与自定义 SwitchPreference 相关的文件,所有首选项都放在 PreferenceFragment 的扩展

SettingsFragment.java

首选项.xml:

CustomSwitchPreference.java:

customswitch_preference.xml:

MainActivity.java:

0 投票
0 回答
4493 浏览

android - Android:自定义开关:如何在不使用图像的情况下使拇指超过 50% 的曲目

我正在尝试创建一个自定义开关按钮,该按钮的拇指约为其轨道的 75%(宽度)。我不想使用图像,只想使用可绘制的形状、样式等。到目前为止,我已经完成了以下操作:

activity_main.xml

switch_custom_track.xml

switch_custom_track_on.xml

switch_custom_track_off.xml

switch_custom_thumb.xml

switch_custom_thumb_on.xml

switch_custom_thumb_off.xml

使用上面的代码,我得到了这个:

https://d1ro8r1rbfn3jf.cloudfront.net/ms_28780/buq3SAmnkEvOTUgRwZsQ7ZKGn5V7U8/switch.png?Expires=1423585499&Signature=GtuSi6G1WwUefvgsDfgPOWEmoe3I93Jm0R-Cyxkm~pgoQkJlf53UCxKJX~m7rs1KahuP9PMdr9N2ht0KjVL0P~rIzvbieEO0~2bjaITq2z2SnNu9TAlGaTJEy~InuS1EcCH~OAkoJPSuZ0IYjq0LwOQBxC9awdgypL~IKGF4GILUfknk~n0ZjC2TzW2ovdbyR8JjX48Pg7Xey82I8oBpwvlRfxGigiGfNDEw36Dqk~Q1dzK5k9IO0ERk~c2m7K~ZdZ78oXvGx8-EGruYCxfJIe5b0PeHqG~ bV1fK9sv1cqRebXWIOJbZS6EZf6BUPIuZ0OO9xQbUXTLrARV55cD6nQ__&Key-Pair-Id=APKAJHEJJBIZWFB73RSA

所以拇指宽度是轨道的 50%。请注意“switch_custom_track_off.xml”中 size 元素中“90dp”的宽度和“switch_custom_thumb_off.xml”中 size 元素中“70dp”的宽度。我预计拇指的相对大小(到轨道)应该是 70dp/90dp=77%。然而,可以清楚地看到轨道扩大到拇指大小的两倍。

那么是否可以制作“完全自定义”大小的拇指和轨道?如果是,你能帮我达到预期的结果吗?

0 投票
0 回答
370 浏览

android - 切换栏在列表视图中不可见,仅棒棒糖

在我的应用程序的设置页面中,我允许用户打开或关闭某些功能。我通过使用包含标题的列表视图来做到这一点,并在每一行中切换开关。

在列表视图中,Lollipop 使用了不同的开关设计,当您将其设置为关闭模式时,该栏完全不可见,您所看到的只是一个圆圈。示例在这里http://postimg.org/image/veos5f3o7/7993cb90/,顶部开关打开,底部关闭。

我想知道如何使该栏可见(例如,类似于 Android OS 设置),因此您可以在关闭模式下判断它是 Switch。谢谢

我的开关布局声明是

0 投票
4 回答
12541 浏览

android - Android开关 - 使拇指高度大于轨道高度,如何?

在 Lollipop 之前的 Android 版本中,有什么方法可以使开关的拇指高度大于轨道高度?

我本质上是在尝试在 Kitkat 中创建一个类似材料设计的开关小部件(以及旧版本 - 这里的问题是拇指默认“适合”在轨道内)。我已经为此工作了很长一段时间,但我似乎无法得出正确的设计。

我遵循了这篇 SO 帖子中的解决方案:如何更改 Switch Widget 的大小

任何建议或解决方案将不胜感激。