我在iOS8 GM上使用Xcode6 GM编译我的项目.当解雇许多视图控制器时,我的应用程序总是崩溃,调试区域显示:
"在转换过程中尝试关闭演示控制器.如果没有设置transitionViewForCurrentTransition,演示控制器在演示期间被解雇了?"
我用谷歌搜索并找到类似的情况并显示相同的错误:
[self.viewController presentViewController:vc animated:NO completion:^{
[self.viewController dismissViewControllerAnimated:NO completion:nil];
}];
Run Code Online (Sandbox Code Playgroud)
它使用Xcode5和iOS7工作正常.错误意味着什么?iOS8对"Hack"不满意吗?提前致谢.
我是一个快速的新手,并制作了一个演示应用程序,在故事板中有一个UIViewController和UITableViewController.UIViewController有一个Collection View和一个嵌入式导航控制器.在点击集合视图单元格时,应用程序将转到UITableViewController.我也可以从UITableViewController回到我的UIViewController.这一切都运作良好.现在,我的UITableViewController中的一些行有URL.在点击URL时,我以编程方式在UIviewcontroller中创建webview并获取要加载的URL.问题是我无法关闭webview并在此之后返回到我的UITableViewController.这是我在UITableViewController类中的代码:
// When user taps a row, get the URL and load it in a webview
let mywebViewController = UIViewController()
let webView = UIWebView(frame: mywebViewController.view.bounds)
webView.loadRequest(NSURLRequest(URL: url)) // url from the row a user taps
mywebViewController.view = webView
self.navigationController!.presentViewController(mywebViewController, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
如何向这个以编程方式创建的UIviewcontroller添加"完成"按钮以关闭webview并返回到我的UITableViewController
我在一个大项目中使用Autolayout来创建新的UITableViewCells.
我有一个TableView,其中每行的高度是自动计算的,我不使用委托函数heightForRowAtIndexPath.
我已经宣布估计行高:
tableView.estimatedRowHeight = 44.0
tableView.rowHeight = UITableViewAutomaticDimension
Run Code Online (Sandbox Code Playgroud)
我的问题是:在另一个TableViewController上有很多UITableViewCells,我在编程上需要声明单元格的高度heightForRowAtIndexPath.我知道将所有单元格转换为使用唯一解决方案会更好,但在这个项目中有很多不同的单元格,所以我想使用一种解决方法并将动态计算的高度与自动布局和编程计算的行相结合高度.
这可能吗?
我发现了类似的问题,他们的答案很有帮助,但我最后还是坚持了.当我点击一个字段时,我试图让pickerView出现,然后当选择数据时,我希望pickerView隐藏.我能够从pickerView中获取数据以隐藏,但是仍然存在一个灰色矩形,它位于pickerView后面.如果我点击屏幕,而不是在字段或pickerView上,灰色矩形会隐藏,然后当我点击下一个字段时再次出现,只有在选择新数据后才会保留,直到我点击一些空白屏幕.
我在下面包含我的代码,你会发现我已经尝试了几个选项.这些都不是我尝试过的,但经过多次尝试,我开始只是注释而不是删除,所以我记得我做了什么.我对编码很陌生,所以我很欣赏这个网站作为资源,感谢您的帮助.
class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource, UITextFieldDelegate {
@IBOutlet var enterSeason: UITextField!
@IBOutlet var enterSport: UITextField!
var dataPickerView = UIPickerView()
var season = ["2013", "2014", "2015"] //multi-season
var sport = ["Baseball", "Football", "Basketball", "Hockey"]
var activeDataArray = []
override func viewDidLoad() {
super.viewDidLoad()
enterSeason.inputView = dataPickerView
enterSport.inputView = dataPickerView
dataPickerView.delegate = self
dataPickerView.dataSource = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func textFieldDidBeginEditing(textField: UITextField) {
activeDataArray = [] //clear …Run Code Online (Sandbox Code Playgroud) 我有一个UIImageView表格单元格,我添加了一个tapGesture.我想访问UIImageViewhandleTap方法.
这是TableCell中Image的代码:
func setImageForCell(cell:ImageCell, indexPath:NSIndexPath) {
var image : UIImage = UIImage(named: "brunnen1")!
cell.customImageView.userInteractionEnabled = true
cell.imageView!.tag = indexPath.row;
var tapGestureRecognizer = UITapGestureRecognizer(target:self, action:Selector("handleTap:"))
tapGestureRecognizer.numberOfTapsRequired = 1;
cell.customImageView.addGestureRecognizer(tapGestureRecognizer)
cell.customImageView.image = image
}
func handleTap(sender : UIView) {
// get the UIImageview from the sender, i guess ?
}
Run Code Online (Sandbox Code Playgroud)
我想我必须把它从UIView?
这段代码中swift的替代代码是什么?
static inline CGFloat randomInRangeScale(CGFloat scale)
{
CGFloat value = arc4random_uniform(INT16_MAX);
return value * 0.000015 + 0.8 ;
}
Run Code Online (Sandbox Code Playgroud)
我试过这个:
func randomInRangeScale(scale : CGFloat) -> CGFloat
{
let value : CGFloat = arc4random_uniform(UInt16);
return value * 0.000015 + 0.8 ;
}
Run Code Online (Sandbox Code Playgroud)
但它给了我一个错误 "Cannot invoke 'arc4random_uniform' with an argument list of type '((UInt16).Type)"
我正在使用RecyclerView来显示数据.但是,当我尝试在onBindViewHolder()方法中绑定数据时,我收到以下错误...
09-12 16:37:51.217 2166-2166/com.zaptech.databasedemowithrecycler E/AndroidRuntime? FATAL EXCEPTION: main
android.content.res.Resources$NotFoundException: String resource ID #0x17
at android.content.res.Resources.getText(Resources.java:230)
at android.widget.TextView.setText(TextView.java:3769)
at com.zaptech.databasedemowithrecycler.adapter.MyEmployeeAdapter.onBindViewHolder(MyEmployeeAdapter.java:47)
at com.zaptech.databasedemowithrecycler.adapter.MyEmployeeAdapter.onBindViewHolder(MyEmployeeAdapter.java:24)
at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5277)
at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:5310)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4568)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4461)
at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:1962)
at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1371)
at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1334)
at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:563)
at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:2847)
at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3145)
at android.view.View.layout(View.java:14008)
at android.view.ViewGroup.layout(ViewGroup.java:4373)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021)
at android.view.View.layout(View.java:14008)
at android.view.ViewGroup.layout(ViewGroup.java:4373)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14008)
at android.view.ViewGroup.layout(ViewGroup.java:4373)
at android.support.v7.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:493)
at android.view.View.layout(View.java:14008)
at android.view.ViewGroup.layout(ViewGroup.java:4373)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14008)
at android.view.ViewGroup.layout(ViewGroup.java:4373)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1663)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1521)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
at android.view.View.layout(View.java:14008)
at android.view.ViewGroup.layout(ViewGroup.java:4373)
at …Run Code Online (Sandbox Code Playgroud) ios ×5
swift ×4
objective-c ×2
android ×1
casting ×1
iphone ×1
uipickerview ×1
uitableview ×1
xcode ×1