我试图使用Swift 3中的CLGeocoder生成格式化的完整地址.我引用了这个SO线程来获取下面给出的代码.
但是,有时应用程序崩溃时会出现"nil"错误:
//Address dictionary
print(placeMark.addressDictionary ?? "")
Run Code Online (Sandbox Code Playgroud)
问题:
完整代码:
func getAddress() -> String {
var address: String = ""
let geoCoder = CLGeocoder()
let location = CLLocation(latitude: selectedLat, longitude: selectedLon)
//selectedLat and selectedLon are double values set by the app in a previous process
geoCoder.reverseGeocodeLocation(location, completionHandler: { (placemarks, error) -> Void in
// Place details
var placeMark: CLPlacemark!
placeMark = placemarks?[0]
// Address dictionary
//print(placeMark.addressDictionary ?? "")
// Location name
if let locationName = placeMark.addressDictionary!["Name"] …
Run Code Online (Sandbox Code Playgroud) 我正在尝试识别TextView中的主题标签,并使它们可单击,这样我可以在用户点击Hashtag时将用户带到另一个View.
我设法使用模式匹配在TextView中识别Hashtags,它们在运行时显示为彩色.但是,我需要使Hashtag可点击.
这是我的代码:
SpannableString hashText = new SpannableString("I just watched #StarWars and it was incredible. It's a #MustWatch #StarWars");
Matcher matcher = Pattern.compile("#([A-Za-z0-9_-]+)").matcher(hashText);
while (matcher.find())
{
hashText.setSpan(new ForegroundColorSpan(Color.parseColor("#000763")), matcher.start(), matcher.end(), 0);
String tag = matcher.group(0);
}
holder.caption.setText(hashText);
//I need to set an OnClick listener to all the Hashtags recognised
Run Code Online (Sandbox Code Playgroud)
使用上面的相同解决方案,如何将onclick侦听器添加到每个#标签?
我将Image Drawable设置为Textn的SpannableString,但图像比文本更大,使它看起来很奇怪.我需要减小imagespan的大小,使其与文本的高度相同:
这是我尝试过的:
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
SpannableStringBuilder builder = new SpannableStringBuilder(holder.temptext.getText());
builder.setSpan(new ImageSpan(drawable), selectionCursor - ":)".length(), selectionCursor, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
holder.temptext.setText(builder);
holder.temptext.setSelection(selectionCursor);
holder.caption.setText(builder);
Run Code Online (Sandbox Code Playgroud) 我正在尝试在Javascript中获取所选图像文件的Base64/Data URL.用户基本上通过文件输入控件选择图像,并生成数据URL.但是,我收到此错误:
未捕获的TypeError:无法在'CanvasRenderingContext2D'上执行'drawImage':提供的值不是'(HTMLImageElement或HTMLVideoElement或HTMLCanvasElement或ImageBitmap)'
HTML:
<body>
<form id="form1">
<div>
<input type="file" id="imageinput" onchange="testit(event)" />
<canvas width="300" height="300" id="mycanvas" style="display: none;"></canvas>
</div>
</form>
</body>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
function testit(event) {
var myImage = URL.createObjectURL(event.target.files[0]);
var myCanvas = document.getElementById('mycanvas');
var ctx = myCanvas.getContext('2d');
ctx.drawImage(myImage, 0, 0);
var mydataURL = myCanvas.toDataURL('image/jpg');
alert(mydataURL);
}
Run Code Online (Sandbox Code Playgroud)
为什么这段代码不起作用,伙计们?
我需要检测,如果用户已经滚动到顶部或底部的的UL在一个HTML页面
<ul id="color-list">
<li>Red</li>
<li>Blue</li>
<li>Purple</li>
<li>Blue</li>
<li>Yellow</li>
<li>Black</li>
<li>White</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我使用此代码来检测用户是否滚动到页面底部:
window.onscroll = function(evt) {
if ((window.innerHeight + window.scrollY) >= document.body.offsetHeight) {
alert("End of Page") ;
}
}
Run Code Online (Sandbox Code Playgroud)
显然这对<ul>不起作用.我应该做些什么改变?
我试图让一个酒吧淡入我的RelativeLayout背景.基本上从后面开始然后淡化为透明.你明白了.
这是我现在的xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient android:startColor="@color/black_translucent"
android:endColor="#323232"
android:angle="90"
android:type="linear"
android:useLevel="true"
/>
</shape>
Run Code Online (Sandbox Code Playgroud)
我将视图应用于:
<View
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="@drawable/gradient_top" />
Run Code Online (Sandbox Code Playgroud)
问题是:视图底部有一个尖锐的结束边缘.我很困惑,因为渐变以透明结束.但是我仍然在视图的底部获得了鲨鱼边缘.我怎样才能调整它以获得淡化?
当用户点击具有数字的TextView时,我试图基本上拨号:
number_title.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:+"+user.getTelephone()));
activity.startActivity(callIntent);
//the above line returns the warning given below
}
});
Run Code Online (Sandbox Code Playgroud)
我得到的警告:
呼叫需要用户可能拒绝的许可.用于明确检查权限是否可用的代码
我知道如果以前没有授予权限,应用程序需要请求权限.我的问题是,如何在拨打电话前明确请求许可?
我实现了一个 AutoCompleteTextView,每次用户输入新的文本输入时,数据都会从服务器更新。效果很好。但是,每次输入新查询时,都会显示以前的结果,直到更新新结果集。
我的猜测是,它会显示当前查询的结果,直到后端响应新的搜索结果。有没有办法清除当前结果?
活动代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search_test);
actv = (AutoCompleteTextView) findViewById(R.id.actv);
actv.setThreshold(1);
actv.setAdapter(new SearchSuggestionsAdapter(this, actv.getText().toString()));
Run Code Online (Sandbox Code Playgroud)
定制适配器:
public class SearchSuggestionsAdapter extends ArrayAdapter<String> {
List<String> types = new ArrayList<>();
protected static final String TAG = "SuggestionAdapter";
private List<String> suggestions;
private Context context;
public SearchSuggestionsAdapter(Activity context, String nameFilter) {
super(context, android.R.layout.simple_dropdown_item_1line);
suggestions = new ArrayList<String>();
this.context = context;
}
@Override
public int getCount() {
return suggestions.size();
}
@Override
public String getItem(int index) {
return suggestions.get(index);
}
@Override
public …
Run Code Online (Sandbox Code Playgroud) 我用.Contains()来查找一个句子是否包含一个特定的单词但是我发现了一些奇怪的东西:
我想找出一个句子中是否有"hi"这个词如下:
孩子想玩泥巴
嗨,您好
赫克托尔有一个髋部问题
if(sentence.contains("hi"))
{
//
}
Run Code Online (Sandbox Code Playgroud)
我只想要过滤第二句,但是所有3个都被过滤了,因为CHILD里面有一个'hi',而hip中有一个'hi'.我如何使用.Contains()这样只挑出整个单词?
这很奇怪。javascript 文件中的 onSuccess() 函数返回整个网页的大量HTML 代码,而不是我实际从 C# WebMethod 返回的值
1) 我在 Windows 10 上运行 Visual Studio 2015
2) 调试时,我在 SignupAccount C# 方法处保留了一个断点。断点没有被击中。还没有到那个地步。但是调用了 onSuccess 函数
这是一个解释:
ASP.NET Web 表单的 HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<!--Code-->
</head>
<body class="account2 signup" data-page="signup">
<!--Code-->
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"></asp:ScriptManager>
<input type="text" name="firstname" id="firstname" placeholder="First Name" required autofocus>
<input type="text" name="lastname" id="lastname" placeholder="Last Name" required autofocus>
<button type="submit" onclick="signup()" id="submit-form" class="btn btn-lg btn-dark btn-rounded" data-style="expand-left">Sign In</button>
<script src="JS/Account.js"></script>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
C# …