iOS10中的UITextField textColor更新,而不是iOS 11中的更新

时间:2017-10-15 00:36:08

标签: ios uitextfield textcolor

我的代码片段非常小:

self.textField.textColor = color

这是为响应用户交互而调用的。它已经工作多年了。在我的iOS 10设备上它仍然有效。在我的iOS 11设备上,在我点击文本字段之前,颜色不会改变。

错误?特征?解决方法?建议欢迎。

2 个答案:

答案 0 :(得分:5)

您可能需要在换色后立即更新/重置UITextField文本:

self.textField.textColor = color
self.textField.text = "Hi! I've changed of color!!"

安德鲁更新,更实用的东西:

 self.textField.textColor = color
 self.textField.text =  self.textField.text

答案 1 :(得分:2)

我可以通过在上面引用的单行下面添加这一行来触发文本颜色更改生效:

<template>
  <v-navigation-drawer
    temporary
    v-model="drawer"
    light
    overflow
    fixed
  >
    <v-list class="pt-0">
      <template v-for="item in items">
        <v-list-tile :key="item.title" :to="item.link">
          <v-list-tile-action>
            <v-icon>{{ item.icon }}</v-icon>
          </v-list-tile-action>
          <v-list-tile-content>
            <v-list-tile-title>{{ item.title }}</v-list-tile-title>
          </v-list-tile-content>
        </v-list-tile>
        <v-divider></v-divider>
      </template>
    </v-list>
  </v-navigation-drawer>
</template>

<script>
  export default {
    props: ['drawer'],
    data() {
      return {
        items: [
          { title: 'Home', icon: 'home', link: '/home'},
          { title: 'History', icon: 'history', link: '/history' },
          { title: 'Wallet', icon: 'account_balance_wallet', link: '/wallet' },
          { title: 'My Profile', icon: 'person', link: '/profile' },
          { title: 'Settings', icon: 'settings', link: '/settings' },
          { title: 'About', icon: 'error', link: '/about' },
          { title: 'Logout', icon: 'power_settings_new', link: '/logout' },
        ]
      };
    },
    watch: {
       drawer (value) {
          return value;
       }
    }
  }
</script>

然而,鉴于上述事实,它仍然看起来像我的代码之外的错误。或者,至少是隐式类合同的变更。