我定义了以下TextView:
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/txtCredits"
android:autoLink="web" android:id="@+id/infoTxtCredits"
android:layout_centerInParent="true"
android:linksClickable="true"></TextView>
Run Code Online (Sandbox Code Playgroud)
where @string/txtCredits
包含的字符串资源<a href="some site">Link text</a>
.
Android正在突出显示TextView中的链接,但它们不响应点击.有人能告诉我我做错了什么吗?我是否必须在我的活动中为TextView设置onClickListener,这对于这么简单?
看起来它与我定义字符串资源的方式有关.这不起作用:
<string name="txtCredits"><a href="http://www.google.com">Google</a></string>
Run Code Online (Sandbox Code Playgroud)
但这样做:
<string name="txtCredits">www.google.com</string>
Run Code Online (Sandbox Code Playgroud)
这是一个无赖,因为我宁愿显示文本链接而不是显示完整的URL.
到现在为止,当我想阻止用户按下按钮时,我会设置
button.setClickable(false);
并通常将文本更改为某种灰色(让用户知道按钮被禁用).今天我偶然发现了这家setEnabled()
酒店.
所以我去了文档,看看方法的解释如下:
setEnabled(boolean enabled)
Set the enabled state of this view.
Run Code Online (Sandbox Code Playgroud)
这甚至意味着什么?启用状态/可点击状态和禁用状态/不可点击状态之间有什么区别?有人可以解释一下我以前做过什么,使用可点击的属性和使用setEnabled()
属性之间的区别是什么?什么时候应该用?我搜索了StackOverflow但找不到任何相关内容.提前致谢.
我从这篇文章中了解到,总是使用<a>
标签或<button>
标签来制作按钮.现在我正在尝试使用<a>
标签.我的问题是:有没有办法增加标签可点击区域?说我<a>
在div框中使用.我希望整个div框成为一个按钮.我可以将点击区域更改为整个div框吗?谢谢你的帮助.
android clickable
和focusable
android有什么区别?
我想让文本的一部分可点击,以便我可以在其上调用函数。我也想控制可点击文本的样式。在最好的情况下,我还可以将可点击区域的大小增加到例如 42px。
我已经研究过 flutter_linkify 和 linkify,但这不是我想要的。我很好奇是否已经有一个包,甚至内置到 flutter 库中。
我想将背景设置android.R.attr.selectableItemBackground
为a LinearLayout
.使用XML时没有问题(可行)
<LinearLayout
android:id="@+id/llMiner"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?android:attr/selectableItemBackground"
android:clickable="true" >
Run Code Online (Sandbox Code Playgroud)
...但我必须在java代码中这样做,所以我试过这个
llMiner.setClickable(true);
llMiner.setBackgroundResource(android.R.attr.selectableItemBackground);
Run Code Online (Sandbox Code Playgroud)
......它不起作用,事实上我得到了NotFoundException
第二行.所以在我尝试了这个变体后认为资源是一个颜色.
llMiner.setClickable(true);
llMiner.setBackgroundColor(android.R.attr.selectableItemBackground);
Run Code Online (Sandbox Code Playgroud)
这个没有启动异常,但是......不起作用(按下时没有改变背景,但是状态改变按下它必须这样做)...任何建议?
我正在使用Interface Builder来布局我的应用程序.我有一个包含一些文本的UITextView,其中一部分是我想点击的URL(例如启动浏览器).我已经阅读了如何执行此操作并相信我正确地执行此操作,但是当URL显示为蓝色/可点击时,在iPhone模拟器中单击它不起作用.什么都没发生.
我的控制器:
@interface FirstViewController : UIViewController <UISearchBarDelegate>
@property (nonatomic, retain) IBOutlet UITextView *review;
@end
Run Code Online (Sandbox Code Playgroud)
在我的实现中我@synthesize review;
(并且能够操纵视图的文本,所以不要认为这是问题).
在IB我有:
..然后,当我去设置文本(并尝试在视图中点击可用的URL)时,我这样做:
self.review.text = content;
// My understanding is that this makes URLs clickable...
self.review.dataDetectorTypes = UIDataDetectorTypeLink;
Run Code Online (Sandbox Code Playgroud)
......显示如下内容:
...它看起来真的想要工作,但是点击URL时没有任何反应.我错过了什么?
--UPDATE--
尝试添加self.review.editable = NO;
以回应Dixit Patel的回答,但它没有解决问题:
self.review.text = content;
// My understanding is that this makes URLs clickable...
self.review.editable = NO;
self.review.dataDetectorTypes = UIDataDetectorTypeLink;
Run Code Online (Sandbox Code Playgroud) 我有这个ListView
只需要显示数据.
所以我不想让它可点击.
首先,我尝试将XML listview更改为:
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:clickable="false" >
Run Code Online (Sandbox Code Playgroud)
但它没有用.
所以要解决我的问题,我通过代码设置:
list.setSelector(android.R.color.transparent);
Run Code Online (Sandbox Code Playgroud)
但我无法相信没有更好的解决方案.任何的想法?
我想使用属性字符串NSLinkAttributeName
来UILabel
在我的iOS 7项目中的实例内创建可点击链接,现在终于可以在不使用外部库的情况下实现.
NSURL *url = [NSURL URLWithString:@"http://www.google.com"];
NSDictionary *attr = [NSDictionary dictionaryWithObjectsAndKeys:
url, NSLinkAttributeName, nil];
Run Code Online (Sandbox Code Playgroud)
在字符串上应用该属性会将文本显示为蓝色和带下划线,但单击/点击时不会发生任何操作.为标签启用了用户交互.有人知道怎么做这个吗?谢谢!
我有一个ListView,我正在填充我的数据库中的值.如果数据库为空,我将ListView的第一项设置为"无数据".我想禁用点击此项目.我用过ArrayAdapter.我尝试制作areAllItemsEnabled,isEnabled为false,但它没用.即使我将ListView的isClickable和setEnabled设置为false,也没用.我将OnItemClickListener的代码放在else条件中,即使这样也不会阻止列表项被点击.有人有替代解决方案吗?谢谢!