Вы должны обернуть ваш EditText внутри TextInputLayout (он поставляется с некоторыми классными анимациями из коробки), тогда вы сможете установить любой цвет для EditText.
xml:
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/inputLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="36dp"
app:passwordToggleEnabled="true"
app:passwordToggleDrawable="@drawable/selector_password_toggle"
app:passwordToggleTint="@android:color/black"
app:errorTextAppearance="@style/errorText"
app:hintTextAppearance="@style/hintText">
<EditText
android:id="@+id/passwordInput"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/registration_hint_password"
android:inputType="textPassword"/>
</com.google.android.material.textfield.TextInputLayout>
код на языке котлин:
inputLayout.isErrorEnabled = true
inputLayout.setErrorTextColor(ColorStateList.valueOf(Color.RED))
inputLayout.error = ERROR MESSAGE
Боюсь, волшебного решения, которое вы ищете, не существует. Этот файл обычно управляется в управлении версиями, затем для любых конфликтов в строке версии просто выберите более позднюю из двух дат. Пока вы также выполняете все связанные миграции, ничто не должно синхронизироваться таким образом. Если два разработчика вызвали изменения в похожей области schema.rb и у вас возникают конфликты в дополнение к версии, то вы сталкиваетесь с обычным разрешением конфликтов слиянием, но, на мой взгляд, их обычно легко понять и разрешить. Я надеюсь, что это поможет некоторым!
Было бы достаточно сделать rake db: dump в хите pre-commit git?
не обязательно исправит (1) или (2), но может решить проблему слияния, а затем, возможно, (1) и (2) исчезнет.
Вместо использования .gitignore
используйте отдельные ветки: Develop
, в котором отсутствуют schema.rb
и Test
и Deploy.
, который включает schema.rb
. Вносите изменения в код только в ветвях Develop и никогда не объединяйте из Test
в Develop
. Храните schema.rb
в отдельной ветке:
Developer A
Develop --------
Local Schema \ Your Repo
Test ---------> Dev A
---------> Dev B
Developer B / Master
Develop -------- Schema
Local Schema Test
Test Deploy
В Git ветки являются указателями на коллекции содержимого файлов, поэтому они могут включать или исключать определенные файлы, а также отслеживать версии файлов. Это делает их гибкими инструментами для построения вашего конкретного рабочего процесса.