, если вы хотите передать данные из ViewControlerOne в ViewControllerTwo попробовать эти ..
сделать это в ViewControlerOne.h
@property (nonatomic, strong) NSString *str1;
сделать это в ViewControllerTwo.h
@property (nonatomic, strong) NSString *str2;
Синтезировать str2 в ViewControllerTwo.m
@interface ViewControllerTwo ()
@end
@implementation ViewControllerTwo
@synthesize str2;
сделать это в ViewControlerOne.m
- (void)viewDidLoad
{
[super viewDidLoad];
// Data or string you wants to pass in ViewControllerTwo..
self.str1 = @"hello world";
}
на кнопке click event сделать это ..
-(IBAction)ButtonClicked
{ //Navigation on buttons click event from ViewControlerOne to ViewControlerTwo with transferring data or string..
ViewControllerTwo *objViewTwo=[self.storyboard instantiateViewControllerWithIdentifier:@"ViewControllerTwo"];
obj.str2=str1;
[self.navigationController pushViewController: objViewTwo animated:YES];
}
делают это в ViewControllerTwo.m
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"%@",str2);
}
Я всегда делал это следующим образом:
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation(dim.width/2-this.getSize().width/2, dim.height/2-this.getSize().height/2);
, где this
- задействованный JFrame.
Я использую среду IDE NetBeans 7.2.1 в качестве среды разработки для разработчиков, и у вас есть возможность настроить свойства JForm.
в свойствах JForm перейдите на вкладку «Код» и настройте «Создать» Центр'. вам нужно сначала установить политику размера формы для «Создать код изменения размера».
Вы можете вызвать JFrame.setLocationRelativeTo(null)
, чтобы центрировать окно. Обязательно установите это перед JFrame.setVisible(true)
Я использую среду IDE NetBeans 7.3, и это то, как я делаю централизацию своего JFrame. Убедитесь, что вы нажмете на панель JFrame и перейдите в панель свойств JFrame, щелкните по строке кода и установите флажок «Создать центр».
Просто нажмите на форму и перейдите к свойствам JFrame, затем вставьте вкладку «Код» и проверьте Generate Center
.
Если вы используете NetBeans, просто нажмите на рамку в представлении проекта, а затем на вкладке кода на ее свойствах. Затем установите флажок «Создать центр». Это выполнит свою работу.
Вы получите размер, после того как вы добавите это:
frame.setLocationRelativeTo(null);
Используйте setLocationRelativeTo(null)
Этот метод имеет особый эффект, когда вы передаете ему null
. Согласно Javadoc:
Если компонент является нулевым, или GraphicsConfiguration, связанный с этим компонентом, является нулевым, окно помещается в центр экрана.
blockquote>Это должно быть сделано после установки размера или вызова
pack()
, но прежде чем устанавливать его видимым, например:frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true);
Если вы явно setPreferredSize(new Dimension(X, Y));
, то лучше использовать:
setLocation(dim.width/2-this.getPreferredSize().width/2, dim.height/2-this.getPreferredSize().height/2);
Проще, чем это ...
setSize(220, 400);
setLocationRelativeTo(null);
, или если вы используете фрейм, установите рамку на
frame.setSize(220, 400);
frame.setLocationRelativeTo(null);
. Для пояснения из docs :
Если компонент имеет значение NULL или значение GraphicsConfiguration, связанное с этим компонентом, равно null, окно помещается в центр экрана.
blockquote >
Вы можете использовать этот метод, который позволяет центрировать JFrame и полноэкранный режим одновременно.
yourframe.setExtendedState(JFrame.MAXIMIZED_BOTH);