Форум программистов, компьютерный форум CyberForum.ru

EditText читает цифры наоборот - Android

Восстановить пароль Регистрация
 
dragonnbullet
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 11
26.10.2015, 15:56     EditText читает цифры наоборот #1
Вписываю цифры, но почему-то EditText читает их наоборот. Я вписывал 523, а оно считало их как 325. Почему такое происходит? Добавил screen и код. Помогите, не знаю в чем в чем проблема
import java.text.DecimalFormat;
import java.util.ArrayList;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import com.example.help_diet_application.DietDetailsValues;


@SuppressLint("InflateParams") public class CaloriesActivity extends Activity {

private MyCustomAdapter dataAdapter = null;
private Double sum = 0.00;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calories);


displayListView();

}

private void displayListView() {


ArrayList<DietDetailsValues> productList = new ArrayList<DietDetailsValues>();
DietDetailsValues product = new DietDetailsValues("[g]","Cukinia",13.00);
productList.add(product);
product = new DietDetailsValues("[g]","Bakłażan",22.00);
productList.add(product);
product = new DietDetailsValues("[g]","Brokuły",15.00);
productList.add(product);
product = new DietDetailsValues("[g]","Pomidor",16.00);
productList.add(product);
product = new DietDetailsValues("[g]","Pieprz",32.00);
productList.add(product);
product = new DietDetailsValues("[g]","Arbuz",35.00);
productList.add(product);
product = new DietDetailsValues("[g]","Banan",97.00);
productList.add(product);
product = new DietDetailsValues("[g]","Jabłko",44.00);
productList.add(product);
product = new DietDetailsValues("[g]","Liczi",73.00);
productList.add(product);
product = new DietDetailsValues("[g]","Mango",66.00);
productList.add(product);
product = new DietDetailsValues("[g]","Morele",45.00);
productList.add(product);
product = new DietDetailsValues("[g]","Boczek",432.00);
productList.add(product);
product = new DietDetailsValues("[g]","Jajko",138.00);
productList.add(product);
product = new DietDetailsValues("[g]","Mleko",65.00);
productList.add(product);
product = new DietDetailsValues("[g]","Ser",284.00);
productList.add(product);
product = new DietDetailsValues("[g]","Baguette",285.00);
productList.add(product);




dataAdapter = new MyCustomAdapter(this,R.layout.my_row, productList);
ListView listView = (ListView) findViewById(R.id.ListView1);

listView.setAdapter(dataAdapter);

}

private class MyCustomAdapter extends ArrayAdapter<DietDetailsValues> {

private ArrayList<DietDetailsValues> productList;

public MyCustomAdapter(Context context, int textViewResourceId,
ArrayList<DietDetailsValues> productList) {
super(context, textViewResourceId, productList);
this.productList = new ArrayList<DietDetailsValues>();
this.productList.addAll(productList);
}

@Override
public View getView(int position, View view, ViewGroup parent) {

DecimalFormat df = new DecimalFormat("0.00##");
DietDetailsValues product = productList.get(position);

if (view == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = vi.inflate(R.layout.my_row, null);
EditText quantity = (EditText) view.findViewById(R.id.quantity);

quantity.addTextChangedListener(new MyTextWatcher(view));

}

EditText quantity = (EditText) view.findViewById(R.id.quantity);
quantity.setTag(product);
if(product.getQuantity() != 0){
quantity.setText(String.valueOf(product.getQuantity()));
}
else {
quantity.setText("");
}

TextView itemNumber = (TextView) view.findViewById(R.id.itemNumber);
itemNumber.setText(product.getItemNumber());
TextView description = (TextView) view.findViewById(R.id.description);
description.setText(product.getDescription());
TextView price = (TextView) view.findViewById(R.id.gr);
price.setText(df.format(product.getGr()) + "kcal");
TextView ext = (TextView) view.findViewById(R.id.ext);
if(product.getQuantity() != 0){
ext.setText(df.format(product.getExt()) + "kcal");
}
else {
ext.setText("");
}

return view;

}

}

private class MyTextWatcher implements TextWatcher{

private View view;
private MyTextWatcher(View view) {
this.view = view;
}

public void beforeTextChanged(CharSequence s, int start, int count, int after) {

}
public void onTextChanged(CharSequence s, int start, int before, int count) {

}
public void afterTextChanged(Editable s) {

DecimalFormat df = new DecimalFormat("0.00##");
String qtyString = s.toString().trim();
int quantity = qtyString.equals("") ? 0:Integer.valueOf(qtyString);

EditText qtyView = (EditText) view.findViewById(R.id.quantity);
DietDetailsValues product = (DietDetailsValues) qtyView.getTag();

if(product.getQuantity() != quantity){

Double currGr = product.getExt();
Double extGr = (quantity * product.getGr())/100;
Double priceDiff = Double.valueOf(df.format(extGr - currGr));

product.setQuantity(quantity);
product.setExt(extGr);

TextView ext = (TextView) view.findViewById(R.id.ext);
if(product.getQuantity() != 0){
ext.setText(df.format(product.getExt()) + "kcal");
}
else {
ext.setText("");
}

if(product.getQuantity() != 0){
qtyView.setText(String.valueOf(product.getQuantity()));
}
else {
qtyView.setText("");
}

sum += priceDiff;
TextView cartTotal = (TextView) findViewById(R.id.sum);
cartTotal.setText(df.format(sum));

}

return;
}
}


}
Миниатюры
EditText читает цифры наоборот  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2015, 15:56     EditText читает цифры наоборот
Посмотрите здесь:

Android Edittext
EditText Android
Android Кастомный EditText
Android Кастомный EditText
Свойства EditTExt Android
Картинка и EditText Android
Выделение EditText Android
Android EditText
Android Смайлы и EditText
Валидация в EditText Android
Кастомный EditText Android
EditText и TextView Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
не спать!
1882 / 1616 / 500
Регистрация: 12.05.2014
Сообщений: 5,836
Завершенные тесты: 1
26.10.2015, 16:03     EditText читает цифры наоборот #2
в настройках эмулятора какая локаль установлена?
может там справа-налево пишут
dragonnbullet
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 11
27.10.2015, 11:04  [ТС]     EditText читает цифры наоборот #3
Не думаю что это эмулятор. Так как с EditText в других приложениях он ведет себя адекватно
YuraAAA
 Аватар для YuraAAA
1563 / 1305 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
27.10.2015, 12:40     EditText читает цифры наоборот #4
dragonnbullet, что с клавиатурой? Это не pinyinime клава?
dragonnbullet
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 11
27.10.2015, 18:31  [ТС]     EditText читает цифры наоборот #5
Точно не знаю, есть иероглифы, но можно переключить на английскую раскладку
Yandex
Объявления
27.10.2015, 18:31     EditText читает цифры наоборот
Ответ Создать тему
Опции темы

Текущее время: 13:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru