Есть ли способ сделать область соприкосновения для UIBarButtonItem размером 44x44? - PullRequest
0 голосов
/ 14 марта 2012

Исходя из HIG, размер кнопки, которую можно нажать, должен быть 44x44.Теперь у меня есть следующее:

UIButton * stop = [UIButton buttonWithType:UIButtonTypeCustom];

        [stop setSize:CGSizeMake(15, 18)];


    [stop setBackgroundImage:[UIImage imageNamed:@"stop-gray.png"] forState:UIControlStateNormal];
    [stop addTarget:self action:@selector(stopPage:) forControlEvents:UIControlEventTouchUpInside];
    stopButton_ = [[UIBarButtonItem alloc] initWithCustomView:stop];

UIBarButtonItem будет помещен в UIToolbar для iphone.Как вы заметили, размер изображения там меньше, чем 15, 18. Есть ли способ сделать область соприкосновения для UIBarButtonItem как 44x44?Или мне нужно создать новую иконку с пустым пространством, чтобы ее размер был 44x44, что является лучшим способом для этого в мире iOS?

Ответы [ 2 ]

1 голос
/ 14 марта 2012

Почему вы используете пользовательский вид? Если вы просто хотите, чтобы на кнопке было пользовательское изображение, используйте -[UIBarButtonItem initWithImage:style:target:action:], и вы получите правильную область нажатия и стандартное поведение системы.

Если вам действительно нужен пользовательский вид, вам не нужно менять свое изображение, чтобы оставить пустое пространство ... просто установите contentHorizontalAlignment и contentVerticalAlignment так, чтобы изображение центрировалось вместо заполнения просмотрите, а затем измените размер своего представления.

0 голосов
/ 14 марта 2012

Я думаю, что Image 44x44 с прозрачным Backgroud и меньшим изображением внутри будет самым простым способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...