我有一个UITableViewController.当我点击一个单元格时,我想推送一个新视图.这工作正常,但新视图没有后退按钮.为什么是这样?
TableViewCode:
if([[NSUserDefaults standardUserDefaults] boolForKey:@"isLoggedIn"])
{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
ProfileViewController* profileViewController = [[ProfileViewController alloc] initWithNibName:@"ProfileViewController" bundle:nil];
profileViewController.message = [NSDictionary dictionaryWithObjectsAndKeys:cell.textLabel.text, @"user_login", @"default", @"message_source", nil];
switch(indexPath.row) {
case kUsernameRow:
[self.navigationController pushViewController:profileViewController animated:YES];
[profileViewController release];
break;
case kAboutRow:
break;
case kTOSRow:
break;
}
}
Run Code Online (Sandbox Code Playgroud) 鉴于这两种情况,哪种代码是最佳实践,为什么?
自动释放
loginButton = [[[UIBarButtonItem alloc] initWithTitle:@"Login"
style:UIBarButtonItemStylePlain
target:self
action:@selector(loginButtonClicked:)]
autorelease];
self.navigationItem.rightBarButtonItem = loginButton;
Run Code Online (Sandbox Code Playgroud)
要么
发布
loginButton = [[UIBarButtonItem alloc] initWithTitle:@"Login"
style:UIBarButtonItemStylePlain
target:self
action:@selector(loginButtonClicked:)];
self.navigationItem.rightBarButtonItem = loginButton;
[loginButton release];
Run Code Online (Sandbox Code Playgroud) 我想要一个UIView从屏幕底部向上滑动(并保持在屏幕中间),就像UIActionSheet一样.我怎么能做到这一点?
更新: 我使用以下代码:
TestView* test = [[TestView alloc] initWithNibName:@"TestView" bundle:nil];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.4];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
test.view.center = CGPointMake(160,100);
//test.view.frame = CGRectMake(0, 0, 160, 210);
[[[UIApplication sharedApplication] keyWindow] addSubview:test.view];
[UIView commitAnimations];
Run Code Online (Sandbox Code Playgroud)
视图似乎是从角落动画并出现在角落里.如何让它从底部向上滑动?越来越接近!
将子视图添加到自身和/或内容视图之间有什么区别?
子视图添加到自我
- (id)initWithFrame:(CGRect)frame { if ((self = [super initWithFrame:frame])) {
UIImage *img = [UIImage imageNamed:@”lol.jpg”];
UIImageView *imgView = [[UIImageView alloc] initWithImage:img];
[self addSubview:imgView];
[imgView release];
return self;
}
Run Code Online (Sandbox Code Playgroud)
子视图已添加到contentView
- (id)initWithFrame:(CGRect)frame { if ((self = [super initWithFrame:frame])) {
UIImage *img = [UIImage imageNamed:@”lol.jpg”];
UIImageView *imgView = [[UIImageView alloc] initWithImage:img];
[self.contentView addSubview:imgView];
[imgView release];
return self;
}
Run Code Online (Sandbox Code Playgroud) 是否有一个很好的示例显示如何查询服务器并下载响应(JSON或XML)?
如果我有一个100,000,000的数字,我怎么能在字符串中将其表示为"100M"?
我有一个名为文件nochart.png在/drawable.
我怎样才能将其设置为ImageView?
chartImageView.setImageDrawable(R.drawable.nochart);
Run Code Online (Sandbox Code Playgroud)
不编译.
我正在尝试序列化JSONObjects的ArrayList.但我得到错误:
05-07 01:04:24.130: WARN/System.err(913): java.io.NotSerializableException: org.json.JSONObject
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1535)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653)
05-07 01:04:24.130: WARN/System.err(913): at java.util.ArrayList.writeObject(ArrayList.java:651)
05-07 01:04:24.130: WARN/System.err(913): at java.lang.reflect.Method.invokeNative(Native Method)
05-07 01:04:24.130: WARN/System.err(913): at java.lang.reflect.Method.invoke(Method.java:507)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1219)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1575)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689)
05-07 01:04:24.130: WARN/System.err(913): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653)
05-07 01:04:24.130: WARN/System.err(913): at org.stocktwits.activity.AddStocksActivity.serializeQuotes(AddStocksActivity.java:183)
05-07 01:04:24.130: WARN/System.err(913): at org.stocktwits.activity.AddStocksActivity.access$9(AddStocksActivity.java:178)
05-07 01:04:24.130: WARN/System.err(913): …Run Code Online (Sandbox Code Playgroud) 我正在使用以下代码来检测我是否已到达UITableView的底部
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
if(self.tableView.contentOffset.y >= (self.tableView.contentSize.height - self.tableView.bounds.size.height)) {
NSLog(@"bottom!");
NSLog(@"%@", [self getLastMessageID]);
[self getMoreStuff:[self getLastMessageID]];
}
}
Run Code Online (Sandbox Code Playgroud)
这工作正常,但唯一的问题是当用户拉下tableview时(如拉动刷新)代码触发.我怎么处理这个?
cocoa-touch ×5
objective-c ×5
android ×4
iphone ×4
java ×3
uitableview ×3
json ×2
drawable ×1
httpclient ×1
imageview ×1
ios ×1
numbers ×1
png ×1
three20 ×1
uiscrollview ×1
uiview ×1
xml ×1