我只想显示编辑文本的底线,但我找不到任何教程或其他东西来帮助我。你能帮帮我吗?
这是一张图片,展示了我真正想做的事情:
-
这是我的activity_signin代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/bg_login"
android:gravity="center"
android:orientation="vertical"
android:padding="10dp" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical"
android:paddingLeft="20dp"
android:paddingRight="20dp" >
<EditText
android:id="@+id/email"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:hint="@string/hint_email"
android:inputType="textEmailAddress"
android:padding="10dp"
android:singleLine="true"
android:textColor="@color/input_login"
android:textColorHint="@color/input_login_hint"
android:background="@android:color/transparent"
/>
<!--android:background="@color/white"-->
<EditText
android:id="@+id/password"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:hint="@string/hint_password"
android:inputType="textPassword"
android:padding="10dp"
android:singleLine="true"
android:textColor="@color/input_login"
android:textColorHint="@color/input_login_hint"
android:background="@android:color/transparent"
/>
<!-- Login Button -->
<Button
android:id="@+id/btnLogin"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:background="@color/btn_login_bg"
android:text="@string/btn_login"
android:textColor="@color/btn_login" />
<!-- Link to Login Screen -->
<Button
android:id="@+id/btnLinkRegScreen"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dip"
android:background="@null"
android:text="@string/btn_link_to_register"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="15dp" />
</LinearLayout>
</LinearLayout>
这是我的SigninActivity代码:
public class SigninActivity extends Activity {
private ProgressDialog pDialog;
JsonParser jsonParser = new JsonParser();
EditText email;
EditText password;
private static final String TAG_SUCCESS = "success";
// Session Manager Class
SessionManager session;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signin);
// Session Manager
session = new SessionManager(getApplicationContext());
// Edit Text
email = (EditText) findViewById(R.id.email);
password = (EditText) findViewById(R.id.password);
//Button
Button btnLogin = (Button) findViewById(R.id.btnLogin);
Button btnLinkRegScreen = (Button) findViewById(R.id.btnLinkRegScreen);
谢谢!
答案 0 :(得分:1)
尝试从AppCompatActivity而不是Activity扩展Activity。之后,您需要更改您在此活动中使用的主题以拥有AppCompat父级,如此Theme.AppCompat.Light.DarkActionBar。然后只需使用普通的EditText,它应该可以解决问题。
答案 1 :(得分:0)
我相信马特乌斯给出的答案是正确的 但是这里是你的代码的复制,如果我删除背景,尝试工作正常......
这是你的结果。
代码如下: - 布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical"
android:paddingLeft="20dp"
android:paddingRight="20dp" >
<EditText
android:id="@+id/email"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:hint="abc@email.com"
android:inputType="textEmailAddress"
android:padding="10dp"
android:singleLine="true"
android:textColor="@android:color/black"
android:textColorHint="@android:color/darker_gray"
/>
<!--android:background="@color/white"-->
<EditText
android:id="@+id/password"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:hint="***********"
android:inputType="textPassword"
android:padding="10dp"
android:singleLine="true"
android:textColor="@android:color/black"
android:textColorHint="@android:color/darker_gray"
/>
<!-- Login Button -->
<Button
android:id="@+id/btnLogin"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:background="@android:color/holo_green_light"
android:text="Login"
android:textColor="@android:color/black" />
<!-- Link to Login Screen -->
<Button
android:id="@+id/btnLinkRegScreen"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dip"
android:background="@android:color/holo_green_light"
android:text="Register"
android:textAllCaps="false"
android:textColor="@android:color/black"
android:textSize="15dp" />
</LinearLayout>
Java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
答案 2 :(得分:0)
试试这个。您可以根据需要向右或向左调整视图。对于这种情况,我们可以放置图像而不是默认线,或者我们可以将视图作为一条线。
<EditText
android:id="@+id/email"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_email"
android:inputType="textEmailAddress"
android:padding="10dp"
android:singleLine="true"
android:textColor="@color/input_login"
android:textColorHint="@color/input_login_hint"
android:background="@null"
/>
<View android:layout_width="300dp"
android:layout_height="1dp"
android:layout_marginLeft="15dp"
android:background="@android:color/black"/>
<!--android:background="@color/white"-->
<EditText
android:id="@+id/password"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_password"
android:inputType="textPassword"
android:padding="10dp"
android:singleLine="true"
android:textColor="@color/input_login"
android:textColorHint="@color/input_login_hint"
android:background="@null"
/>
<View android:layout_width="300dp"
android:layout_height="1dp"
android:layout_marginLeft="15dp"
android:background="@android:color/black"/>
答案 3 :(得分:0)
要仅显示EditText的底线,我需要删除背景属性:CMakeLists.txt
这是我的EditTexts代码:
android:background="@android:color/transparent"
其余代码仍然相同。
谢谢大家的帮助。