小编Rus*_*ell的帖子

rightBarButtonItem不会出现在导航栏iOS中

我在显示导航栏的rightBarButtonItem时遇到问题 - 我试图在Application Delegate中以编程方式创建它,我的UINavigationController已经设置好了.

代码如下:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

// Override point for customization after application launch.
RSCListViewController *list = [[RSCListViewController alloc] initWithStyle:UITableViewStylePlain];
self.navController = [[UINavigationController alloc] initWithRootViewController:list];

UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithTitle:@"+"
                                                              style:UIBarButtonItemStylePlain
                                                             target:list
                                                             action:@selector(addPressed:)];

self.navController.navigationItem.rightBarButtonItem = barButton;

self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];

[DatabaseManager openDatabase];

return YES;
}
Run Code Online (Sandbox Code Playgroud)

运行应用程序时,导航栏上不会显示任何按钮项.

我不确定我是否遗漏了一些明显的东西 - 我尝试使用相关的Stack Overflow线程纠正问题并没有取得任何成功.

任何帮助赞赏.

objective-c uinavigationcontroller uibarbuttonitem rightbarbuttonitem uinavigationitem

13
推荐指数
1
解决办法
1万
查看次数

使用OO Observer模式而不更新发生更改的对象

我正在构建一个包含GUI和模型的应用程序.我正在使用Observer模式(使用java的内置接口)在模型中的字段发生更改时更新GUI.

这通常工作正常,但我有一种情况,其中模型中的特定String变量(特别是文件的url)可以通过两个单独的JTextFields(swing)更改,其内容实际上反映了模型变量的值有问题.

我遇到的问题来自于这些JTextField之一的更改需要更新模型的状态以及其他JTextField的内容.我的模型确保仅在模型状态发生变化的情况下才将通知发送给观察者.但是,修改JTextFields的过程涉及消隐它的文本内容然后重新设置它.

没有太多细节,结果就是更新/通知过程陷入了infinte循环.我暂时通过抛开这个特定问题的观察者模式来解决这个问题,但我想知道是否有人能够建议一种巧妙的方法来确保特定组件不会被源自同一组件的更改"更新".

任何帮助赞赏.

java oop swing jtextfield observer-pattern

1
推荐指数
1
解决办法
416
查看次数