2011-07-07 55 views

回答

1

以及由“siliconeagle”还要检查这个环节中提供的链接.... http://developer.android.com/reference/android/widget/Button.html

这包含诸如onFocusChanged在视图中使用的方法的说明(布尔集中,INT方向, Rect previouslyFocusedRect)等。

+0

我真的想要执行一些类似到:if(button.setFocussed()== true){.....},这可以实现吗? – user788511

+0

有一个方法“setEnabled(boolean enabled)”,它可以设置视图的启用状态。还有另一种方法“onFocusChanged(boolean focused,int direction,Rect previouslyFocusedRect)”,它将在焦点变化时调用。您也可以在我提供的链接中找到更多方法。我很抱歉,但我无法完全理解您的需求,但我认为这些将有所帮助。告诉我,如果这些帮助或你需要别的东西。 – Sumit

+0

嗨Sumit,我的实现是这样的:case HIGLIGHTEDTEXT:if(button.isEnabled()== true {....},这种方式如果用户选择HIGHLIGHTEDTEXT选项,运行时检查按钮是否启用并实现我不确定的是使用的方法,你能帮忙吗? – user788511

1

任何继承View拥有国建,使用的setEnabled,setFocussed,的setSelected,setPressed

如果使用StateList可绘制的图形内容会自动dependingon状态被改变,它会在这样的事情(在res /drawable/buttonexample.xml):

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" android:drawable="@drawable/butt_add_on_32" /> 
    <item android:drawable="@drawable/butt_add_off_32" /> 
</selector> 

那么你就可以在你的XML布局添加它的按钮,它都得到自动管理。看到 http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList

+0

我真的想要执行类似于:if(button.setFocussed()== true){.....},这可以实现吗? – user788511

+0

使用setSelected来高亮度按钮。如果你使用setEnabled这个按钮不会响应在你的可绘制xml中点击 – siliconeagle

+0

然后你添加一个状态项 siliconeagle

0

这些方法可用于Button:isEnabled(),isFocused(),isPressed()等等。

尝试查看http://developer.android.com/reference/android/view/View.html#pubmethods,因为Button从View继承这些方法。

+0

我已经考虑过这些方法,但是如果我能看看执行方式,如何确定一个按钮是否真的对我有益突出显示.. – user788511

+0

你是什么意思?像这样:if(myButton.isEnabled()){//做某事} – Marmoy