如何在android中滚动文本字段水平?

时间:2013-10-19 10:49:02

标签: android android-layout

我的用户界面是

UserName:Textfield

密码:文本字段

Button

我在android中制作简单的UI。实际上我面临的问题很少

1)如果文字越来越多,编辑字段不会水平滚动。

2)显示密码。

3)如果我想在弹出屏幕中显示这个意味着一个小窗口怎么可能?

<TextView
    android:id="@+id/username"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="31dp"
    android:layout_marginTop="108dp"
    android:textSize="12sp"
    android:textStyle="bold"
    android:text="UserName" />

<EditText
    android:id="@+id/usename_edit"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/username"
    android:layout_alignBottom="@+id/username"
    android:layout_marginLeft="35dp"
    android:layout_toRightOf="@+id/username"
    android:ems="10" >

    <requestFocus />
</EditText>

<TextView
    android:id="@+id/username_password"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/username"
    android:layout_below="@+id/usename_edit"
    android:layout_marginTop="28dp"
     android:textStyle="bold|italic"
    android:text="Password" />

<EditText
    android:id="@+id/edit_password"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/username_password"
    android:layout_alignBottom="@+id/username_password"
    android:layout_alignLeft="@+id/usename_edit"
    android:ems="10" />

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/edit_password"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="62dp"
    android:textStyle="bold"
    android:text="ClickMe" />

4 个答案:

答案 0 :(得分:1)

答案1:

在定义文本视图的java代码中添加此行

textview.setMovementMethod(new ScrollingMovementMethod());

并将其添加到xml文件中

 android:fadeScrollbars="false"
 android:scrollbars="horizontal"

答案2:

对于您的密码EditText在xml文件中添加此行

 android:inputType="textPassword"

答案3:

使用对话框。像这样的东西

myDialog = new Dialog(Login.this);
            myDialog.setContentView(R.layout.emailpop);
            myDialog.setTitle("Login");
            myDialog.setCancelable(true);

            et_f = (EditText) myDialog.findViewById(R.id.et_pass);
            et_f.setText(et1.getText().toString());
            t5 = (TextView) myDialog.findViewById(R.id.textView4);
            t5.setVisibility(View.GONE);

            // for OK
            Button ok = (Button) myDialog.findViewById(R.id.button1);
            ok.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {


            });
            myDialog.show();

答案 1 :(得分:0)

通过代码试试..

usename_edit.setHorizontalScrollBarEnabled(true);

edit_password.setHorizontalScrollBarEnabled(true);

还可以通过设置scrollbars prop从xml完成​​。 edittext

 scrollbars="horizonatal"

为密码问题设置此道具。到xml中的editext:

android:inputType="textPassword"

答案 2 :(得分:0)

  

1)如果文本更多,则编辑字段不会水平滚动   来了。

EditText <{1}}中添加属性android:singleLine="true"

  

2)显示密码。

android:inputType="textPassword"

添加属性edit_password
  

3)如果我想在弹出屏幕中显示这个意味着它是一个小窗口   可能的

你需要一个AlertDialog。 结帐this教程。

答案 3 :(得分:0)

1)要使scrollable在您的活动类中使用.setHorizontalScrollBarEnabled(true);,或在scrollbars="horizonatal"中使用edittext xml

2)来设置密码 * **** :使用android:inputType="textPassword"  在edittext xml

3)要显示弹出窗口,您可以使用alertDialog