在iOS中,如果我将按钮的背景设置为图像,当我按下按钮时,按钮的全部内容(包括文本)将被遮蔽.我可以在Android中实现相同的效果,还是必须为不同的状态使用不同的图像?此外,即使我为不同的状态使用不同的图像,如何使文本也被遮蔽?一种肮脏的方式是OnClickListener将按钮设置为按钮并按下时以编程方式遮蔽文本,但还有其他方法吗?
问题描述:
我有TextView一个RelativeLayout和我要的颜色它的红色,当用户触摸它,另一页上走的时候,他点击它.所以我试着设置一个OnClickListener来做点击,并OnTouchListener实现触摸功能(MotionEvent.ACTION_DOWN)但是这个组合不起作用,因为OnTouchListener使得OnClickListener非功能性(不知道为什么).
在论坛上,人们说我们可以OnClick通过OnTouch 来实现MotionEvent.ACTION_UP,但是这个可以从我的TextView布局中触发(如果你按下它并将你的手指从他的手指中释放就会点击TextView)这不是所希望的行为因为我想:
在TextView上点击=按+释放.
有人可以给我一个解决方案吗?
我注册了
getInputMap().put(KeyStroke.getKeyStroke("pressed RIGHT"), "go right");
Run Code Online (Sandbox Code Playgroud)
在测试代码时,我得到:当我按住右箭头键时,动作会被反复触发,而不仅仅是我预期的一次.
有趣的是
getInputMap().put(KeyStroke.getKeyStroke("released RIGHT"), "stop");
Run Code Online (Sandbox Code Playgroud)
触发器仅在最终释放密钥时停止.
有没有办法在输入映射上注册键击,以便相关的操作仅在按下键时触发一次?
我使用XML文件显示一个具有2种状态的按钮(正常,按下).如何确定按下按钮的时间?是否有像onClick这样的事件 - > onPressed或者如何找到它?
这是我使用的XML文件:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/buttonbluepressed" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/buttonbluepressed" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/buttonbluepressed" />
<item android:drawable="@drawable/buttonblue"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
以下是我如何使用它:
<Button
android:id="@+id/button_choose"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/choose_button"
android:onClick="onButtonClicked"
android:text="@string/button_choose" />
Run Code Online (Sandbox Code Playgroud) 我正在寻找tcl中的一种方法来暂停脚本(例如在一些带有"puts"的输出之后)并等待从用户按下的键,然后继续输出剩余的文本.
我按下按钮写了这个css代码
.button:pressed {
-fx-scale-y: 0.9;
-fx-scale-x: 0.9;
}
Run Code Online (Sandbox Code Playgroud)
这个按钮悬停
.button:hover {
-fx-background-color: #383838;
-fx-scale-y: 1.1;
}
Run Code Online (Sandbox Code Playgroud)
并且它没有按比例缩小,因为要点击按钮,它显然必须悬停.有没有办法在按下按钮时取消悬停代码?
我有一个UIWebView,当我按下文本链接(至少一秒钟)时,某种UIActionSheet会出现3个按钮(打开,复制和取消) - 有没有办法防止它出现?
谢谢
我在标题div中有4个按钮.我已经将它们全部放在css的顶部和左边使用边距,所以它们在一行中彼此相邻.没有什么花哨.
现在,当按下按钮按钮文本向下移动一点时,我正在尝试执行操作.
我在CSS中使用此代码:
#btnhome:active{
line-height : 25px;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<div id="header">
<button id="btnhome">Home</button>
<button id="btnabout">About</button>
<button id="btncontact">Contact</button>
<button id="btnsup">Help Us</button>
</div>
Run Code Online (Sandbox Code Playgroud)
按钮CSS示例:
#btnhome {
margin-left: 121px;
margin-top: 1px;
width: 84px;
height: 45px;
background: transparent;
border: none;
color: white;
font-size:14px;
font-weight:700;
}
Run Code Online (Sandbox Code Playgroud)
这些按钮也适用于标题背景,我确信它与这些设置有关:
#header {
background-image: url(images/navbar588.png);
height: 48px;
width: 588px;
margin: 2em auto;
}
Run Code Online (Sandbox Code Playgroud)
它运作良好但唯一的问题是所有其他按钮也将文本向下移动?这是为什么?我不清楚我只想使用#btnhome吗?所有按钮都有完全不同的ID.除边距外,所有按钮都具有相同的CSS设置.我需要编辑什么?
非常感谢你.
我想检查某个javax.swing.JButton(常规按钮)是否被按下(在它被释放之前).是否有任何选项可以检查按钮是否已关闭?
最简单的解决方案是添加一个MouseListener响应鼠标单击和释放事件的解决方案.但是,这并不包括通过Enter键或任何其他方式激活按钮的情况.我不想通过键盘或其他方式禁用激活鼠标 - 我只想知道何时按下它而不限制它的行为.
我尝试了所有不同的事件,只有两个响应按下按钮的是ActionPreformed(ActionEvent)和StateChanged(ChangedEvent)事件.ActionPreformed每次点击执行一次,这意味着只有在按下并释放按钮后才会执行,所以这并不好.当我点击一个按钮时,StateChanged确实被调用了几次,而当我发布它时,它被调试了好几次.但是,事件对象仅包含有关源窗口小部件(按钮)的信息,并且不包含有关状态更改本身的信息.这可以防止我们想要捕获哪些事件.
提前致谢!
我必须在按下键(Alt + H)时手动运行方法().
if("The key pressed==(Alt+H)"){
callMethod();
}
public void callMethod(){
//Some codes here
}
Run Code Online (Sandbox Code Playgroud)
我怎么能用Java实际做到这一点.请给我一个简单的方法来做到这一点.