我有一个class MyPolyline: MKPolyline {
// Initialize them specific to your needds
var x = 0
var y = 0
}
extension ViewController {
func mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer {
guard let overlay = overlay as? MyPolyline else {
return MKOverlayRenderer(overlay: overlay)
}
let renderer = MKPolylineRenderer(overlay: overlay)
// You can also add a strokeColor as a computed property to the MyPolyline class
renderer.strokeColor = overlay.x == overlay.y ? UIColor.blue : UIColor.green
renderer.lineWidth = 3
return renderer
}
}
,其输入类型为 Number 。
用户点击它,就会显示带有“数字”模式的键盘。
当用户输入数字时,我应该显示Dialog而不隐藏键盘。
EditText
但是对话框在显示时将键盘模式从 Number 模式更改为 Alphabetic 模式,然后将其切换回 Number 模式解雇。 这种“闪烁”看起来很丑。
如何强制对话框不会更改键盘的模式?
注意:
当我的另一个带有字母模式的 Dialog dialog = new Dialog(context);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.my_loader_dialog);
dialog.setCancelable(false);
dialog
.getWindow()
.setBackgroundDrawableResource(
R.drawable.proccess_popup_drawable);
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED);
dialog.show();
具有焦点时,我应该显示相同的对话框。