/ / IOS Custom UIButton - iphone, object-c, ios, object, uibutton

IOS потребителски UIButton - iphone, цел-c, ios, обект, uibutton

В момента работя върху малка заявка, в която имам няколко UIButtonс. Всеки от тях има UIImageView под него. В момента свързвам всеки UIButton с всеки UIImageView (всички са наименувани чрез IBOutlet - UIButton и UIImageView). Когато натисна един бутон, изображението се променя. Бих искал да знам дали е възможно (и как) да се създаде бутон, който съдържа основния UIImage (не UIButton изображение или фоново изображение), нещо като нов обект.

Това изображение е малко по-голямо от свързаното UIButton, подобно на основните приложения на калкулатора на ябълка, и това изображение се променя, когато натисна бутона.

Опитах няколко решения (със сигурност непълни) и започвам да се отчайвам.

Сегашното ми решение е функционално, но не ми е особено елегантно.

Отговори:

0 за отговор № 1

UIButton има и двете image и backgroundImage като негови свойства.

За да постигнете това, което търсите, всъщност ви препоръчвам да се придържате само към един UIButton, и след това използва contentInset за позициониране на image над backgroundImage така че създава ефекта, който мисля, че търсите. Това трябва да е много лесно в конструктора на интерфейса ...


0 за отговор № 2

можете да направите невидим бутон и зад него да направите изображението ..

Това ще ви даде това, което искате, но трябва да се избягва на цена ...

Придържайте се UIButton..

Вярвам, че дори в приложението калкулатор те са самоUIB и нищо друго. те са били кодирани, за да бъдат моментално избрани .. затова ги виждате да променят осветеността за малка фракция и всеки бутон е кодиран, за да изпълнява специфична функция (+ - / равен.)

Актуализация: може да съм под съмнение, но ако сте поискали бутон, за да има изглед на изображението вътре в него.

тогава тук е отговорът.

Направете UI бутон. Направете ImageView и след това извикайте [theButton.view addSubview: ImageView];

Тъй като както UIbutton, така и UIImage изглед наследяват от UIView .. можете да добавите колкото се може повече subviews към тях .. това е в тях


0 за отговор № 3

Ако разбирам правилно въпроса ви, можете да опитате следното:

UIButton * бутон = [UIButton alloc] init]; [бутон setImage: buttonImage forState: UIControlStateNormal]; когато бутонът не е натиснат

[бутон setImage: buttonImage forState: UIControlStateSelected]; когато бутонът е натиснат

[освобождаване на бутон];