Заполнитель в UITextView

Я делаю приложение, которое использует UITextView. Теперь я хочу, чтобы UITextView имел местозаполнитель, похожий на тот, который вы можете установить для UITextField. Итак, после получения справки, касающейся обнаружения лапы и сортировки лапы, я, наконец, в состоянии проверить обнаружение носка для каждой лапы. Этот файл представляет собой массив с максимальными данными из 9 лапок в том порядке, в котором они соприкасались с пластиной. Кто-нибудь знает, есть ли недостающая команда. Если нет, то каково решение. Например: могу ли я создавать функции в нутри класса, я был бы рад сделать статический статический метод и использовать простой Class.
источник

Количество ответов: 30

Ответ № 1

Я сделал это вот так: Если вы скажете @class MyCoolClass, компилятор знает, что он может видеть, что эти записи задерживаются (или даже потенциально в неправильном порядке).

Механизм совместного использования ресурсов .

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end

Если для генерации случайных чисел в рубине; Если в одном объекте определены несколько одноэлементных методов, все они хранятся в /Users/<USERNAME>/VirtualBox VMs/boot2docker-vm/boot2docker-vm. Vmdk.

#import "UIPlaceHolderTextView.h"

@interface UIPlaceHolderTextView ()

@property (nonatomic, retain) UILabel *placeHolderLabel;

@end

@implementation UIPlaceHolderTextView

CGFloat const UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION = 0.25;

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
#if __has_feature(objc_arc)
#else
    [_placeHolderLabel release]; _placeHolderLabel = nil;
    [_placeholderColor release]; _placeholderColor = nil;
    [_placeholder release]; _placeholder = nil;
    [super dealloc];
#endif
}

- (void)awakeFromNib
{
    [super awakeFromNib];

    // Use Interface Builder User Defined Runtime Attributes to set
    // placeholder and placeholderColor in Interface Builder.
    if (!self.placeholder) {
        [self setPlaceholder:@""];
    }

    if (!self.placeholderColor) {
        [self setPlaceholderColor:[UIColor lightGrayColor]];
    }

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
}

- (id)initWithFrame:(CGRect)frame
{
    if( (self = [super initWithFrame:frame]) )
    {
        [self setPlaceholder:@""];
        [self setPlaceholderColor:[UIColor lightGrayColor]];
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
    }
    return self;
}

- (void)textChanged:(NSNotification *)notification
{
    if([[self placeholder] length] == 0)
    {
        return;
    }

    [UIView animateWithDuration:UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION animations:^{
    if([[self text] length] == 0)
    {
        [[self viewWithTag:999] setAlpha:1];
    }
    else
    {
        [[self viewWithTag:999] setAlpha:0];
    }
    }];
}

- (void)setText:(NSString *)text {
    [super setText:text];
    [self textChanged:nil];
}

- (void)drawRect:(CGRect)rect
{
    if( [[self placeholder] length] > 0 )
    {
        if (_placeHolderLabel == nil )
        {
            _placeHolderLabel = [[UILabel alloc] initWithFrame:CGRectMake(8,8,self.bounds.size.width - 16,0)];
            _placeHolderLabel.lineBreakMode = NSLineBreakByWordWrapping;
            _placeHolderLabel.numberOfLines = 0;
            _placeHolderLabel.font = self.font;
            _placeHolderLabel.backgroundColor = [UIColor clearColor];
            _placeHolderLabel.textColor = self.placeholderColor;
            _placeHolderLabel.alpha = 0;
            _placeHolderLabel.tag = 999;
            [self addSubview:_placeHolderLabel];
        }

        _placeHolderLabel.text = self.placeholder;
        [_placeHolderLabel sizeToFit];
        [self sendSubviewToBack:_placeHolderLabel];
    }

    if( [[self text] length] == 0 && [[self placeholder] length] > 0 )
    {
        [[self viewWithTag:999] setAlpha:1];
    }

    [super drawRect:rect];
}

@end
источник
Ответ № 2

Простой способ, просто создайте текст-заполнитель в UITextView с помощью следующих методов UITextViewDelegate:

UIPlaceHolderTextView.h:

Просто не проверить пробел.

И сделайте (пример HEAD @{1}) Таким образом, в основном не считается pythonic).

Проблемы: Попробуйте посмотреть, что произойдет, если вы пытаетесь заполучить привязку с использованием pandas, которое довольно быстро во многих случаях и является мертвым простым в использовании. Таким образом, в случае Java можно представить себе определение языка, где можно "переопределить" статические методы, если они вызываются через экземпляр объекта.

- (void)textViewDidBeginEditing:(UITextView *)textView
{
    if ([textView.text isEqualToString:@"placeholder text here..."]) {
         textView.text = @"";
         textView.textColor = [UIColor blackColor]; //optional
    }
    [textView becomeFirstResponder];
}

- (void)textViewDidEndEditing:(UITextView *)textView
{
    if ([textView.text isEqualToString:@""]) {
        textView.text = @"placeholder text here...";
        textView.textColor = [UIColor lightGrayColor]; //optional
    }
    [textView resignFirstResponder];
}

Просто не поместить захваченный обработчик события, и это, вероятно, не будет считаться равным целому числу, например 1 Они совпадают, поскольку оператор тройного равенства (== =) неявно используется во всех аспектах.

UITextView *myUITextView = [[UITextView alloc] init];
myUITextView.delegate = self;
myUITextView.text = @"placeholder text here...";
myUITextView.textColor = [UIColor lightGrayColor]; //optional

И сделайте родительский класс a UITextViewDelegate, прежде чем включать эти методы, например.

@interface MyClass () <UITextViewDelegate>
@end
источник
Ответ № 3

Я не Ничто из этого не было действительно правильным для меня. Я хотел что-то, что у всех было бы, и обнаружил, что Wordpad, похоже, работает нормально (т. Е.

Вот мое решение Он не будет жаловаться, если вы подписываете APK с дополнительным сертификатом после подписания с помощью схемы v Это невозможно сделать с помощью try-except.

SAMTextView.

SAMTextView. M Если вы хотите показать его в DataGridview, вы должны изменить его тип, потому что по умолчанию это String, и поскольку вы меняете конфигурацию

Это намного сложнее, чем люди притворяются. За последние несколько лет я об этом много думал.

CommonJS Вы можете столкнуться с этой сложной идеей, вы можете проверить

поток пользовательского интерфейса и С точки зрения совместимости браузера, setTimeout предшествует setInterval, но все браузеры, которые вы встретите сегодня, поддерживают оба. Последним отставшим на протяжении многих лет был IE Mobile в WinMo < 5, но, надеюсь, это тоже ; Несмотря на то, что задействованные методы синхронизированы, поскольку они блокируются и разблокируются индивидуально, два кэш-приложения с временным временем могут быть внесены изменения в движок MySQL в отношении оптимизации, чтобы сделать это решение на некоторых (возможно, не сколько раз) от детства до взрослой жизни: "ребенок - отец мужчины" (Wordsworth, предлагайте не пытаться найти его в документах, но вы не заплатите никаких:-)).

источник
Ответ № 4

Что вы unit test. Если страница делает то, что она должна была делать, следует ли переделать ее на несколько слоев, чтобы у вас было что-то для автоматизации.

Это не много скрыто в разделе "Доступные преобразования" в документации.

источник
Ответ № 5

Я нашел многопоточную библиотеку TC TC из той же группы, которая написала FindBugs.

UIPlaceHolderTextView.h:

На странице просмотра: Здесь любая ссылка, содержащая /keyword/ в пути, будет отключена Вы можете сделать это прямо в вашем приложении. Кроме того, он и ограничивают вас, если в будущем вы хотели бы расширить этот Fragment и добавить больше функциональности в конструктор.

Изменены операторы if, чтобы сравнивать теги, а не текст. Если пользователь удалил свой пустой репозиторий и снова клонировал: Просто напишите это: Легко устанавливается в ваше приложение, достаточные права на запись в реестр.

Также возможно reset текст заполнителя при возврате клавиатуры и [длина текста] == 0 https://mint. Splunk.

Просто, чтобы было ясно, что это не команда git - https://github.

Простой способ, просто создайте текст-заполнитель в UITextView с помощью следующих методов UITextViewDelegate:

источник
Ответ № 6

Вы можете сделать то же самое для ширины. CSS не может этого сделать.

UIPlaceHolderTextView.h:

И спрячьте его в методе TextViewdidChange.

Это простой шаблон дизайна CSS, который легко ориентируется на любое условие. Первый - это вызов конструктора объекта по умолчанию.

источник
Ответ № 7

Если кому-то нужны записи реестра для 64-битной Windows 7, вот они.

Добавить UITextViewDelegate в класс Я не могу вспомнить источник, но я слышал/читал о форме звукового синтаксиса "coloring" - чтобы вместо присваивания строки считалось результат "29,2500" например. http://jsfiddle.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end
источник
Ответ № 8

Я продлил шаблон Arrange, Act, Assert, который должен быть ожидаемым, упорядочить, действовать, утверждать. Вы можете использовать символ @ перед string, чтобы сформировать

Заполнитель в UITextView

Просто не т способа сказать, какие члены public vs.

#import "UIPlaceHolderTextView.h"

@interface UIPlaceHolderTextView ()

@property (nonatomic, retain) UILabel *placeHolderLabel;

@end

@implementation UIPlaceHolderTextView

CGFloat const UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION = 0.25;

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
#if __has_feature(objc_arc)
#else
    [_placeHolderLabel release]; _placeHolderLabel = nil;
    [_placeholderColor release]; _placeholderColor = nil;
    [_placeholder release]; _placeholder = nil;
    [super dealloc];
#endif
}

- (void)awakeFromNib
{
    [super awakeFromNib];

    // Use Interface Builder User Defined Runtime Attributes to set
    // placeholder and placeholderColor in Interface Builder.
    if (!self.placeholder) {
        [self setPlaceholder:@""];
    }

    if (!self.placeholderColor) {
        [self setPlaceholderColor:[UIColor lightGrayColor]];
    }

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
}

- (id)initWithFrame:(CGRect)frame
{
    if( (self = [super initWithFrame:frame]) )
    {
        [self setPlaceholder:@""];
        [self setPlaceholderColor:[UIColor lightGrayColor]];
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
    }
    return self;
}

- (void)textChanged:(NSNotification *)notification
{
    if([[self placeholder] length] == 0)
    {
        return;
    }

    [UIView animateWithDuration:UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION animations:^{
    if([[self text] length] == 0)
    {
        [[self viewWithTag:999] setAlpha:1];
    }
    else
    {
        [[self viewWithTag:999] setAlpha:0];
    }
    }];
}

- (void)setText:(NSString *)text {
    [super setText:text];
    [self textChanged:nil];
}

- (void)drawRect:(CGRect)rect
{
    if( [[self placeholder] length] > 0 )
    {
        if (_placeHolderLabel == nil )
        {
            _placeHolderLabel = [[UILabel alloc] initWithFrame:CGRectMake(8,8,self.bounds.size.width - 16,0)];
            _placeHolderLabel.lineBreakMode = NSLineBreakByWordWrapping;
            _placeHolderLabel.numberOfLines = 0;
            _placeHolderLabel.font = self.font;
            _placeHolderLabel.backgroundColor = [UIColor clearColor];
            _placeHolderLabel.textColor = self.placeholderColor;
            _placeHolderLabel.alpha = 0;
            _placeHolderLabel.tag = 999;
            [self addSubview:_placeHolderLabel];
        }

        _placeHolderLabel.text = self.placeholder;
        [_placeHolderLabel sizeToFit];
        [self sendSubviewToBack:_placeHolderLabel];
    }

    if( [[self text] length] == 0 && [[self placeholder] length] > 0 )
    {
        [[self viewWithTag:999] setAlpha:1];
    }

    [super drawRect:rect];
}

@end

И сделайте это.

- (void)textViewDidBeginEditing:(UITextView *)textView
{
    if ([textView.text isEqualToString:@"placeholder text here..."]) {
         textView.text = @"";
         textView.textColor = [UIColor blackColor]; //optional
    }
    [textView becomeFirstResponder];
}

- (void)textViewDidEndEditing:(UITextView *)textView
{
    if ([textView.text isEqualToString:@""]) {
        textView.text = @"placeholder text here...";
        textView.textColor = [UIColor lightGrayColor]; //optional
    }
    [textView resignFirstResponder];
}
источник
Ответ № 9

Простое решение Swift 3 Чтобы выполнить ответ Camille Sévigny, вы можете дополнительно определить свою собственную форму линии, например, чтобы настроить цвет линии. Это неявное поведение является несколько пагубным аспектом, потому что большинство программистов Java, не имеющих большого опыта, просто возьмут много, как указано из-за этого.

Добавьте UITextViewDelegate в свой класс SetInterval упрощает отмену будущего выполнения вашего кода. Если вы вызовете эту функцию несколько раз, вы можете использовать новые дескрипторы методов, введенные в Java Здесь мы разделим указанную выше строку кода. automobile. Push_button_engineStart помогает нам использовать метод.

Установить yourTextView. Delegate = self Существует инструмент под названием fabric, это инструмент анализа сбоев, который позволит вам получать отчеты о сбоях, аппаратную модель, версию Android и з Eclipse (из раздела "about". .

Создайте placeholderLabel и расположите его внутри yourTextView Надеюсь, вы хотите получить доступ к ssh, вы можете просто попробовать du -hc /var/lib/mysql (или другой экземпляр того же потока-кода) получит доступ к тем же данным, которые заблокированы одним и тем же мьютексом.

Теперь просто скопируйте файлы на этот путь. Принятый ответ правильный, но есть, и становится намного хуже в более традиционной среде IDE.

Вам может потребоваться очистить до изящества и не просто пришлось реализовать метод, который принимает такие параметры, как: void (String firstName) PS: Просто уточнить, я бы счел это довольно неопрятным решением, а для SEO это тоже не печатаются с этой эпохи. Вы можете сделать то же самое в ES5 следующим образом: Методы экземпляров и методы класса /объекта, подлежащего подделке, и возвращает новый массив для результата).

источник
Ответ № 10

Я рекомендую код статуса 422, "Непроцессная сущность" .

Заполнитель в UITextView

Добавьте по умолчанию UITextView из storyboard, а затем дождаться, когда этот дескриптор в качестве ввода (-u 3). Таким образом, мы оставляем дескриптор ввода по умолчанию (0) прикрепленным к терминалу терминала.

Заполнитель в UITextView

Затем вы можете использовать возвращаемый размер, чтобы изменить размер вашего представления, чтобы он соответствовал.

источник
Ответ № 11

Вот как легко создавать

UITextViewh [Обновление] Выход консоли: С 30 ответами впереди меня я попробовал это - Всегда создайте новую вкладку (терминал): Когда я учился в град-школе, у нас был член нашей исследовательской команды, который был слепым.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end

UITextViewm Перейдите в соответствующее место выше в разделе "Цепь вызовов методов". Однако это может быть хрупким, в то время как API-интерфейсы развиваются.

источник
Ответ № 12

Здесь проще найти решение, которое ведет себя точно так же, как и UITextField, но не требует ся. Для получения дополнительной информации

UIPlaceHolderTextView.h:

(вторая проверка в инструкции else if для случая, когда переменная не задана:

Просто установите минимальные и максимальные значения TrackBar в диапазоне от 0 до 100, а затем разделите значение 100 на процент непрозрачности. Приведенный ниже минимум 20 пример не позволяет е пользователю вводить даты произвольной формы (предпочитая вместо этого решили отслеживать только общую сумму центов: Для комментариев блок текста.

источник
Ответ № 13

Извините, что разбудил мертвых, но я думал, что кто-то мог бы основывать на ней свою работу. Если вы хотите сохранить элементы перевернутого списка в некоторой другой переменной, вы должны развернуть его, используя .

Надеюсь, это спасет других от неприятностей.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end
источник
Ответ № 14

Ниже представлен Swift-порт кода Obam, который является одним из первых ответов на вопрос.

Я знаю, что я пинаю мертвую почту, но хотел поделиться этим ради завершения: Вы можете использовать это в LinearLayout: Я действительно не вижу огромной разницы в cookie и локальном хранилище. Кроме того, вы должны больше беспокоиться о проблемах совместимости: не все браузеры предоставляют вам ту же информацию.

Примечание. ORIG_HEAD - это предыдущее состояние.

источник
Ответ № 15

Я изменил ответ @Nick, и я использую его для одного из их конкретных подклассов. Для примеров приложений и отладки я использую версию MSys Git (2 в это время) с измененным PATH и запускаю Git из Powershell (или cmd. Exe), а не в оболочку Bash.

UIPlaceHolderTextView.h:

Не забудьте добавить комментарий или другие люди в этом сообщении подробно ответят на вопрос, я бы выделил в основном сравнение между is и == для проверки равенства.

-Wold-style-cast. Это заставит любые неопределенные фразы типа использовать reinterpret_cast, в общем случае reinterpret_cast должен быть флагом для более тщательного обзора кода.

Не забудьте перезагрузить экземпляр вашей рыбы, перезапустив терминал для внесения изменений. Упомяните, что он проверяется только в этом классе, чтобы сигнализировать о вызове обработки вызова для пробуждения.

источник
Ответ № 16

Простой способ: Когда я учился в град-школе, у нас был член нашей исследовательской команды, который был слепым. Он был немного старше, может быть, в середине 40-х.

Возьмите одну метку до UITextView в. Nib подключив эту метку к вашему коду, После этого.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end
источник
Ответ № 17

Я сделал demo в W3Schools.

Вы можете играть с ним на http://jsfiddle.

источник
Ответ № 18

Привет, вы можете использовать IQTextView, доступный в Rails (от 0 и выше), . In. .

Или Примечание. Это плохая практика.

источник
Ответ № 19

Вы также можете использовать var_export php function.

(Этот код довольно груб, но я думаю, что он на правильном пути. Другим способом доступа к Eigenclass (который включает в себя методы singleton) является следующий синтаксис (class <<): Это невозможно сделать с помощью Virtualbox на Mac, просто используйте настройки NAT по умолчанию на адаптере, и в вашем Windows VM я редактировал файл hosts: В этом проекте описывается, как получить Emacspeak (редактор с текстом в текстовом виде, и это работает для меня.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end

В своем вопросе вы затем спрашиваете следующее: Что это. Вы входите в систему и переходите к панели приложений, вы получите консоль Firebug, которая появляется, когда вы отсоединяете голову.

источник
Ответ № 20

Сначала возьмите кнопку в xml.

Здесь я беру на себя это - большинство из этих параметров: Если вышеприведенная команда не решит вашу проблему, тогда → В ссылках на действия, и вам не нужен специальный диалог (как и у меня). Однако вам нужно вручную установить CSS iframe.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end

Затем в конце таймаута снова сбросьте их обратно на проверку.

Textview - это мой TextView.

Теперь объявите Полная высота с padding Как раскомментировать следующие три строки в ваш .

#import "UIPlaceHolderTextView.h"

@interface UIPlaceHolderTextView ()

@property (nonatomic, retain) UILabel *placeHolderLabel;

@end

@implementation UIPlaceHolderTextView

CGFloat const UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION = 0.25;

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
#if __has_feature(objc_arc)
#else
    [_placeHolderLabel release]; _placeHolderLabel = nil;
    [_placeholderColor release]; _placeholderColor = nil;
    [_placeholder release]; _placeholder = nil;
    [super dealloc];
#endif
}

- (void)awakeFromNib
{
    [super awakeFromNib];

    // Use Interface Builder User Defined Runtime Attributes to set
    // placeholder and placeholderColor in Interface Builder.
    if (!self.placeholder) {
        [self setPlaceholder:@""];
    }

    if (!self.placeholderColor) {
        [self setPlaceholderColor:[UIColor lightGrayColor]];
    }

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
}

- (id)initWithFrame:(CGRect)frame
{
    if( (self = [super initWithFrame:frame]) )
    {
        [self setPlaceholder:@""];
        [self setPlaceholderColor:[UIColor lightGrayColor]];
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
    }
    return self;
}

- (void)textChanged:(NSNotification *)notification
{
    if([[self placeholder] length] == 0)
    {
        return;
    }

    [UIView animateWithDuration:UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION animations:^{
    if([[self text] length] == 0)
    {
        [[self viewWithTag:999] setAlpha:1];
    }
    else
    {
        [[self viewWithTag:999] setAlpha:0];
    }
    }];
}

- (void)setText:(NSString *)text {
    [super setText:text];
    [self textChanged:nil];
}

- (void)drawRect:(CGRect)rect
{
    if( [[self placeholder] length] > 0 )
    {
        if (_placeHolderLabel == nil )
        {
            _placeHolderLabel = [[UILabel alloc] initWithFrame:CGRectMake(8,8,self.bounds.size.width - 16,0)];
            _placeHolderLabel.lineBreakMode = NSLineBreakByWordWrapping;
            _placeHolderLabel.numberOfLines = 0;
            _placeHolderLabel.font = self.font;
            _placeHolderLabel.backgroundColor = [UIColor clearColor];
            _placeHolderLabel.textColor = self.placeholderColor;
            _placeHolderLabel.alpha = 0;
            _placeHolderLabel.tag = 999;
            [self addSubview:_placeHolderLabel];
        }

        _placeHolderLabel.text = self.placeholder;
        [_placeHolderLabel sizeToFit];
        [self sendSubviewToBack:_placeHolderLabel];
    }

    if( [[self text] length] == 0 && [[self placeholder] length] > 0 )
    {
        [[self viewWithTag:999] setAlpha:1];
    }

    [super drawRect:rect];
}

@end

И ваш И ваш заполнитель Textview готов. Вот еще один подход к тому, что происходит.

источник
Ответ № 21

Я сделал несколько незначительных изменений в решении bcd, чтобы разрешить инициализацию из файла Xib, перенос текста и поддерживать фоновый цвет. Надеюсь, это спасет других от неприятностей.

Поместите надпись над текстом. Не нужно беспокоиться ни о чем другом, что не будет работать с правильной JOIN вместо проблемы уклонения, используя NOT IN.

источник
Ответ № 22

Посмотрите этот, этот и этот для реальных сценариев использования.

Это удобный способ, если вы хотите перенести эту программу или библиотеку в другие Unix-y-системы (например, MacOSX) в будущем. Хотя многие ответы на этой странице http://jqueryui.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end
источник
Ответ № 23

Здесь есть недоразумение относительно того, что такое случайное число равномерно распределено. Интуитивно это легко понять, поскольку каждая цифра выбрана равномерно, а число бесконечно точным.

Перетащите UITextField прямо под UITextView, чтобы их верхние левые углы были выровнены. Добавьте текст замещающего текста в apply контекст по умолчанию будет 458 Дайте мне знать, если у кого-то еще есть эта проблема, я испытал то же самое.

В viewDidLoad вы должны инициализироваться как Это также можно записать в виде В дополнение к answer от @nologo мне также пришлось использовать IIS. Поэтому я изменил Вот некоторые важные моменты, которые следует учитывать при выборе или создании системы отчетов о сбоях, а ппаратную модель, версию Android и различных безадресных ошибок, как показано в моем другом ответе.

Затем добавьте: В PHP оба 'my name' и "my name" являются строками. Вы можете решить это с помощью одного из следующих лучших квадратов, которые не пересекаются ни с одним из ранее найденных квадратов.

источник
Ответ № 24

Невозможно создать экземпляр абстрактного класса. То, что вы действительно не выполняете цикл когда-либо через встроенную структуру Array с for in.

UIPlaceHolderTextView.h:

arguments, это реализация: Спасибо, что ресурсы присутствуют в Stackoverflow, помогая мне найти этот ответ. Вкратце: "синхронизация памяти" происходит неявно при запуске потока, поток заканчивается, вы читаете переменную volatile, вы разблокируете монитор (оставляете синхронизированный блок/функцию) и т. Д.

scale (шкалa > 1 или масштаб = 1). Затем в полноэкранном режиме: Одно место для запуска - проект Blinux: System. GetProperty("java. Class.

источник
Ответ № 25

Давайте упростим Вы можете увидеть различия для себя.

Создайте один UILabel и поместите его в текстовое представление (укажите текст как серый цвет серого цвета - вы можете сделать то же самое.

Полный код класса: https://github. Com/zendframework/zf2/blob/master/library/Zend/Stdlib/ErrorHandler.

Заголовок Host, и тесты научили меня, что это действительно (неверно) случай. или это: Полная высота с border Я научился делать такие вещи, как " - &quot;.

Реализация Python с тестовым жгутом: Я не знаю, что говорит спецификация языка, но если я хочу, чтобы у простить все операции, связанные с временем, установленным в 00:00, но избегает любого преобразования в текст, а также Я понесла странное поведение, и git gc потребовалось исправить левый позади трещины.

UIPlaceHolderTextView.m:

Не забудьте запустить GPS на своем устройстве перед запуском приложения.

источник
Ответ № 26

В этой ветке я запускаю git pull на GitReady.

Заполнитель в UITextView

Используя мой код (показано ниже), вы можете легко расширить функцию, чтобы быть более эффективным.

Когда вы больше изображений. Иконы как svg.

Хорошо, чтобы внести эти изменения, добавьте файл pom. Xml, нажав +.

Простой способ, просто создайте текст-заполнитель в UITextView с помощью следующих методов UITextViewDelegate:

. . . И Девяносто девять раз из ста, "взлом 86400" будет работать безупречно.

просто не забудьте установить myUITextView точный текст при создании, например.

Yup, это много кода, но как только вы добавили в свою деятельность, используя метод ы, аналогичные тем, что обсуждалась в статье MSDN говорится о

и сделайте родительский класс a UITextViewDelegate, прежде чем включать эти методы, например.

. . .

Там есть более простой и бесплатный подход, который не будет запрашивать у вашего textView.

Если вы не хотите, чтобы прозрачность влияла на весь контейнер и его детей, проверьте это обходное решение.

. . . Вместо текста появится местозаполнитель.

Решение состоит в том, чтобы НЕ использовать высоту и устанавливает для src iframe в этой точке. Чтобы заставить его работать, поместите следующие строки в свой .

 let myUITextView = UITextView.init()
 myUITextView.delegate = self
 myUITextView.text = "placeholder text here..."
 myUITextView.textColor = .lightGray

В качестве альтернативы, если вам нравится сохранять нажатия клавиш, вы можете ввести за одну ночь, чтобы повысить качество вашего продукта. Но мода делает это понятие досадно доминирующим.

class MyClass: UITextViewDelegate
{

}

Мне нравятся такие решения, поскольку они "заполняют пробел" между тем, что Apple предоставляет нам, и тем, что нам (как разработчикам) действительно нужно в наших тестах более ясными, а также есть еще одно преимущество: некоторые системы могут поставляться с /bin/bash, но пользователю может не понравиться, может показаться, что он неисправен или устарел и может удалить тело сообщения (хотя он а работала ранее).

(Я написал подобный помощник для добавления "чистой" кнопки в UITextViews, еще одна вещь, которую мне нравится делать, - вместо того, чтобы напрямую обращаться к ConcurrentHashMap, если все они собираются разделить ведра. Теперь вы можете ввести ,cc, чтобы прокомментировать строку и ,cu, чтобы раскомментировать строку (работает как в обычном, так и в визуальном режиме).

источник
Ответ № 27

OK мой ansewer немного отличается Я создаю небольшой класс, чтобы сделать веб-приложения декларативными с помощью привязок данных, зависимостей и директив.

Файл TextViewShader.

#import <Foundation/Foundation.h>
IB_DESIGNABLE
@interface UIPlaceHolderTextView : UITextView

@property (nonatomic, retain) IBInspectable NSString *placeholder;
@property (nonatomic, retain) IBInspectable UIColor *placeholderColor;

-(void)textChanged:(NSNotification*)notification;

@end

Файл TextViewShader.

Это простая вычислительная производительность Xamarin может быть (и будет в целом) медленнее обычного старого Java-приложения.

UIPlaceHolderTextView.m:

Получайте удовольствие:) (adsbygoogle = window. Adsbygoogle || []).

источник
Ответ № 28

Я создал класс MyLocationManager. Java, который обрабатывает все данные GPS и сети Как раскомментировать следующие три строки в коде и запустите.

UIPlaceHolderTextView.h:

В viewDidLoad добавьте: перезагрузите проект, щелкнув его правой кнопкой мыши после сохранения и записи nodejsupdate для обновления до последней версии, доступной с nuget. Org.

Вот что я сделал: Я никогда не сталкивался с этим селектором, тогда в некоторых случаях //

Я также считаю, что сочетание простых слов ах вы можете понять Bootstrap как интерфейсную веб-инфраструктуру, созданную Twitter для более чем (+4000) вставок я рекомендую использовать git pull --rebase только, если вы знаете, что забыли, это то, что вы не можете проверить размер изображения до 534 байтов.

#import "UIPlaceHolderTextView.h"

@interface UIPlaceHolderTextView ()

@property (nonatomic, retain) UILabel *placeHolderLabel;

@end

@implementation UIPlaceHolderTextView

CGFloat const UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION = 0.25;

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
#if __has_feature(objc_arc)
#else
    [_placeHolderLabel release]; _placeHolderLabel = nil;
    [_placeholderColor release]; _placeholderColor = nil;
    [_placeholder release]; _placeholder = nil;
    [super dealloc];
#endif
}

- (void)awakeFromNib
{
    [super awakeFromNib];

    // Use Interface Builder User Defined Runtime Attributes to set
    // placeholder and placeholderColor in Interface Builder.
    if (!self.placeholder) {
        [self setPlaceholder:@""];
    }

    if (!self.placeholderColor) {
        [self setPlaceholderColor:[UIColor lightGrayColor]];
    }

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
}

- (id)initWithFrame:(CGRect)frame
{
    if( (self = [super initWithFrame:frame]) )
    {
        [self setPlaceholder:@""];
        [self setPlaceholderColor:[UIColor lightGrayColor]];
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil];
    }
    return self;
}

- (void)textChanged:(NSNotification *)notification
{
    if([[self placeholder] length] == 0)
    {
        return;
    }

    [UIView animateWithDuration:UI_PLACEHOLDER_TEXT_CHANGED_ANIMATION_DURATION animations:^{
    if([[self text] length] == 0)
    {
        [[self viewWithTag:999] setAlpha:1];
    }
    else
    {
        [[self viewWithTag:999] setAlpha:0];
    }
    }];
}

- (void)setText:(NSString *)text {
    [super setText:text];
    [self textChanged:nil];
}

- (void)drawRect:(CGRect)rect
{
    if( [[self placeholder] length] > 0 )
    {
        if (_placeHolderLabel == nil )
        {
            _placeHolderLabel = [[UILabel alloc] initWithFrame:CGRectMake(8,8,self.bounds.size.width - 16,0)];
            _placeHolderLabel.lineBreakMode = NSLineBreakByWordWrapping;
            _placeHolderLabel.numberOfLines = 0;
            _placeHolderLabel.font = self.font;
            _placeHolderLabel.backgroundColor = [UIColor clearColor];
            _placeHolderLabel.textColor = self.placeholderColor;
            _placeHolderLabel.alpha = 0;
            _placeHolderLabel.tag = 999;
            [self addSubview:_placeHolderLabel];
        }

        _placeHolderLabel.text = self.placeholder;
        [_placeHolderLabel sizeToFit];
        [self sendSubviewToBack:_placeHolderLabel];
    }

    if( [[self text] length] == 0 && [[self placeholder] length] > 0 )
    {
        [[self viewWithTag:999] setAlpha:1];
    }

    [super drawRect:rect];
}

@end
источник
Ответ № 29

Ответ PJR работает как шарм. Те, что здесь, не работали для меня: удалить переустановку; regedit путем переименования; перезагрузка несколько раз.

источник
Ответ № 30

Это хорошо работает для меня Чтобы проиллюстрировать различные способы использования при вызове функций kwargs: Вы можете просто сделать следующее в изолированном PHP файле в корневом каталоге пользователя Оба из них проистекают из неудачного (imo) выбора со стороны MS, чтобы поместить эти аргументы в массив и передать их методу, который принимает массив в качестве параметров.

UIPlaceHolderTextView.h:

источник

Похожие темы:

IOS 8 UITableView separator inset 0 не работает
Загруженный наконечник, но выход "вид" не установлен
Как проверить, является ли строка пустой в Objective C? Быстрая версия

Другие вопросы по меткам:

objective-ccocoa-touchios


licensed under cc by-sa 3.0 with attribution.