Android 如何找到EditText的默认样式?

Android 如何找到EditText的默认样式?,android,android-edittext,android-styles,Android,Android Edittext,Android Styles,我想看看EditText的默认样式到底定义了什么。所以我的第一步是弄清楚,哪种风格是默认的 检查编辑文本时,我发现: public EditText(Context context, AttributeSet attrs) { this(context, attrs, com.android.internal.R.attr.editTextStyle); } 我认为这意味着默认样式被定义为com.android.internal.R.attr.editTextStyle。但是在哪里可以

我想看看EditText的默认样式到底定义了什么。所以我的第一步是弄清楚,哪种风格是默认的

检查编辑文本时,我发现:

public EditText(Context context, AttributeSet attrs) {
    this(context, attrs, com.android.internal.R.attr.editTextStyle);
}
我认为这意味着默认样式被定义为com.android.internal.R.attr.editTextStyle。但是在哪里可以找到这种风格的实现?为什么是R.attr.editTextStyle?

attr意味着AttributeSet——一个带有视图参数的特殊集合,在构造函数中传递并在那里解析。它包含XML设置的所有属性,或仅使用上下文构造函数时的默认属性集。com.android.internal.R.attr.editTextStyle和所有其他R.都只是整数指针,可能在低层视图中处理?由TextView扩展

请注意,com.android.internal.R.attr.editTextStyle只是指向系统定义的样式的指针,所以它可能在不同版本之间有所不同,尤其是在材质设计之前,所以4.x。例如,在源代码editTextStyle中,它进一步指向材料设计相关的第244行

<item name="editTextStyle">@style/Widget.Material.EditText</item>