在我的应用程序中,我有一个EditText供用户输入文本.所以,我想在SharedPreferences中保存EditText的文本.我希望在更改editText中的文本时更新SharedPreferences.我正在使用此代码:
message = (EditText) findViewById(R.id.et_message);
final SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(this);
message.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count){
prefs.edit().putString("autoSave", s.toString()).commit();
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after){
}
@Override
public void afterTextChanged(Editable s){
}
});
Run Code Online (Sandbox Code Playgroud)
EditTextonTextChanged()或afterTextChanged.我无法从EditText获取文本并将其转换为字符串,然后在吐司中显示输入的文本.Toast仅显示一个没有文本的小空白栏.这是我的代码.
package com.asssra.textinput;
import android.os.Bundle;
import android.app.Activity;
import android.text.Editable;
import android.view.Menu;
import android.view.View;
import android.widget.*;
public class MainActivity extends Activity {
EditText t;
Button b;
String s;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
t = (EditText) findViewById(R.id.box);
b = (Button) findViewById(R.id.button);
s = t.getText().toString();
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this,s,Toast.LENGTH_LONG).show();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action …Run Code Online (Sandbox Code Playgroud) 我正在为我的应用程序使用深色背景.edittext的文本颜色设置为白色.它在最新版本中运行良好.但是在旧版本中,因为edittext本身显示为白色,我无法在edittext中看到输入的文本.我怎么处理这个?
有谁知道如何解析EditText中的double?
我知道怎么做,但这不是我认为的正确方法.有没有人有最好的做法?
谢谢.
基本上我正试图EditText用button"Ok"来显示TextView输出中显示的内容.button按下"确定"后,它将获得输入的文本EditText并显示在TextView.
一直在寻找,找不到任何有效的东西.有人可以帮忙吗?
编辑:1)真的很感激回应和帮助家伙.2)我想我是在问这个错误.我想要做的是创建一个选项,用户可以将自己的Text添加到活动中.
编辑:谢谢你的帮助!!!!!!!!!!!!
我正在定义EditText,如下所示.我希望Done按钮出现在软键盘中,但我得到了Return按钮.
<EditText
android:id="@+id/txtCommentContent"
android:layout_width="match_parent"
android:layout_height="160dp"
android:layout_margin="5dp"
android:background="@drawable/bg_edittext_gradient"
android:gravity="top|start"
android:hint="@string/strHintContentComment"
android:maxLines ="4"
android:imeOptions="actionDone"
android:padding="5dp"
android:textSize="15sp"
android:textColor="@color/black"
android:scrollHorizontally="false"/>
Run Code Online (Sandbox Code Playgroud)
谁能指出我做错了什么?
如何使EditText提示从右到左
我写了阿拉伯词提示,其提示显示在左侧。
我在列表中有三个textview和一个编辑文本.当我在edittext中输入任何值时,相同的值也会复制到另一个edittext中.我厌倦了onFocusChangedListener和onTextChanged的实现,但两种情况都是一样的.
public class ProductListAdapter extends BaseAdapter {
Context context;
public ArrayList<Products> prodList;
private static LayoutInflater inflater = null;
public ProductsList productListActivity;
public ProductListAdapter(Context context,ArrayList<Products> prodList) {
this.context = context;
this.prodList = prodList;
inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
Log.e("In adapter", "yes");
}
@Override
public int getCount() {
return prodList.size();
}
@Override
public Products getItem(int position) {
return prodList.get(position); }
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView( final int position, View convertView, ViewGroup parent) {
Log.i(" in …Run Code Online (Sandbox Code Playgroud) 所以每次我运行应用程序时,输入一个ID并点击提交; 最终结果以null作为ID.
例如:我想输入12345它应该去http://www.hiddenlink.com/12345,但它转到http://www.hiddenlink.com/null
这是我的代码:
public class SearchActivity extends Activity {
Button btnSearchStudent;
String studentID;
private String url = "http://www.hiddenlink.com/" + studentID; // This is test SID just to confirm connection
private static final String TAG_ALLRECORDS = "Objects";
private static final String TAG_ENAME = "emer_name1";
private static final String TAG_EPHONE1 = "emer_Phone1";
private static final String TAG_EPHONE2 = "emer_Phone2";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search);
EditText txtStudentID = (EditText) findViewById(R.id.txtStudentID);
studentID = txtStudentID.getText().toString();
btnSearchStudent = (Button) …Run Code Online (Sandbox Code Playgroud) 我有一个EditText在TextInputLayout.
<android.support.design.widget.TextInputLayout
android:id="@+id/inputTextUser"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:hintTextAppearance="@style/TextAppearence.App.TextInputLayout" >
<EditText
android:id="@+id/userName"
android:layout_width="match_parent"
android:layout_height="40dp"
android:ems="10"
android:hint="@string/user_hint"
android:singleLine="true"
android:textColor="@color/white"
android:textSize="16sp" >
<requestFocus />
</EditText>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
我希望将底线颜色更改为白色,我尝试了这个解决方案,但它不能与我合作:
<style name="MyMaterialTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColorHint">@color/white</item>
<item name="colorControlNormal">@color/white</item>
<item name="colorControlActivated">@color/white</item>
<item name="colorControlHighlight">@color/white</item>
</style>
<style name="TextAppearence.App.TextInputLayout" parent="@android:style/TextAppearance">
<item name="android:textColor">@color/light_blue_A400</item>
<item name="android:textSize">12sp</item>
</style>
Run Code Online (Sandbox Code Playgroud)
这是风格主题后的图像:
有什么建议可以在不聚焦和聚焦时改变颜色底线?
android android-edittext android-styles android-design-library