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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
#1

Crash Activity при присвоении ItemList-у Adapter-a - Программирование Android

26.09.2016, 14:08. Просмотров 544. Ответов 35
Метки нет (Все метки)

Activity

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.TextView;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
 
public class RestoreActivity extends AppCompatActivity implements View.OnClickListener {
 
 
    ImageButton btnOKRestore;
    ImageButton btnExitRestore;
    Button btnOpenFile;
    TextView xPath;
    TextView xFile;
    String xFileName;
    String xInventname;
    String a;
    String str;
    String aPath;
    ArrayAdapter<String> xAdapter;
    ListView lvData;
    String[] list;
    ArrayList<String> arrayList;
    Integer i = 1;
    Integer j = 0;
    Integer k = 0;
    long xUserCode;
    long xInventMCode;
    private static final int SIZE=6;
 
    dbclass dbHelper = new dbclass(this);
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_restore);
 
        btnOpenFile = (Button) findViewById(R.id.btnOpenFile);
        btnOKRestore = (ImageButton) findViewById(R.id.btnOKRestore);
        btnExitRestore = (ImageButton) findViewById(R.id.btnExitRestore);
        xPath = (TextView) findViewById(R.id.ePath);
        xFile = (TextView) findViewById(R.id.eFile);
        lvData = (ListView) findViewById(R.id.lvData);
 
        xUserCode = (getIntent().getLongExtra("UserCode", 0));
 
        btnOpenFile.setOnClickListener(this);
        btnOKRestore.setOnClickListener(this);
        btnExitRestore.setOnClickListener(this);
    }
 
    @Override
    public void onClick(View v) {
 
        switch (v.getId()) {
            case R.id.btnOpenFile:
                ClicOpenFile();
                break;
 
            case R.id.btnOKRestore:
                ClicbtnOKRestore();
                break;
 
            case R.id.btnExitRestore:
                ClickbtnExitRestore();
                break;
        }
    }
 
    private void ClickbtnExitRestore() {
        finish();
    }
 
    private void ClicbtnOKRestore() {
 
    }
 
    private void ClicOpenFile() {
        Intent intent = new Intent(this, FileManager.class);
        startActivityForResult(intent, 1);
    }
 
    // Метод для открытия файлаa
    private void readFile(String aFileName) {
        FileInputStream is = null;
        InputStreamReader in = null;
        BufferedReader br = null;
        a = "";
        arrayList = new ArrayList<String>();
        try {
            File f = new File(aFileName);
            is = new FileInputStream(f);
            in = new InputStreamReader(is, "UTF-8");
            br = new BufferedReader(in);
            while ((str = br.readLine()) != null) {
                // Заполнение Array
                a = a + '"' + i + "," + str + '"' + "! ";
                list = new String[]{a};
                i = i + 1;
            }
 
            arrayList = DataAnalise(a);
 
            xAdapter = new ArrayAdapter<String>(this, R.layout.list_item_for_import, arrayList);
            lvData.setAdapter(xAdapter);
        } catch (Exception e) {
        } finally {
            if (br != null) {
                try {
                    br.close();
                } catch (IOException e) {
                }
            }
            if (in != null) {
                try {
                    in.close();
                } catch (IOException e) {
                }
            }
            if (is != null) {
                try {
                    is.close();
                } catch (IOException e) {
                }
            }
        }
    }
 
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (data == null) {
            return;
        }
        aPath = data.getStringExtra("url");
        j= aPath.lastIndexOf("/") + 1;
        k= aPath.length();
        xPath.setText(aPath.substring(0, j));
        xFileName = aPath.substring(j,k);
        xFile.setText(xFileName);
        xFileName = xFile.getText().toString();
        j= xFileName.lastIndexOf(".");
        k= xFileName.length() - 4;
        xInventname = (xFileName.substring(0, j));
        xInventMCode = getInventMCode(xInventname);
        if (xInventMCode == 0)
            readFile(aPath);
    }
 
    private long getInventMCode(String vInventNum) {
        long xResult;
        xResult = dbHelper.getInventMCode(vInventNum);
        return xResult;
    }
 
    public ArrayList DataAnalise(String xImportData) {
        String[] arrObj = xImportData.split("!");
        ArrayList<ImportData> aList = new ArrayList<>();
 
        for (int i = 0; i < arrObj.length; i++) {
            String[] tempObj = arrObj[i].split(",");
            if (tempObj.length == SIZE)
                aList.add(new ImportData(tempObj[0], tempObj[1], tempObj[2], tempObj[3], tempObj[4], tempObj[5]));
        }
        return aList;
    }
 
 
}
Класс для импорта данных

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
public class ImportData {
 
    private Integer xRecNum;
    private String xInvoiceNum;
    private String xPostDesc;
    private String xInvoiceFullNum;
    private Integer xParcelQw;
    private String xZonaDesc;
 
    public ImportData(Integer xRecNum, String xInvoiceNum, String xPostDesc, String xInvoiceFullNum, Integer xParcelQw, String xZonaDesc) {
        this.xRecNum = xRecNum;
        this.xInvoiceNum = xInvoiceNum;
        this.xPostDesc = xPostDesc;
        this.xInvoiceFullNum = xInvoiceFullNum;
        this.xParcelQw = xParcelQw;
        this.xZonaDesc = xZonaDesc;
    }
 
    public ImportData(String s, String xInvoiceNum, String xPostDesc, String xInvoiceFullNum, String s1, String xZonaDesc) {
    }
 
    public Integer getxRecNum() {
        return xRecNum;
    }
 
    public void setxRecNum(Integer xRecNum) {
        this.xRecNum = xRecNum;
    }
 
    public String getxInvoiceNum() {
        return xInvoiceNum;
    }
 
    public void setxInvoiceNum(String xInvoiceNum) {
        this.xInvoiceNum = xInvoiceNum;
    }
 
    public String getxPostDesc() {
        return xPostDesc;
    }
 
    public void setxPostDesc(String xPostDesc) {
        this.xPostDesc = xPostDesc;
    }
}
Леауты

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@layout/rect"
    android:orientation="vertical"
    android:weightSum="1">
 
    <TableRow
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:weightSum="1">
 
        <TextView
            android:id="@+id/ePath"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="/sdcard/inventfiles"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="#010199"
            android:enabled="false"
            android:layout_weight="0.26"
            android:layout_margin="5dp" />
 
        <TextView
            android:id="@+id/eFile"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="#010199"
            android:enabled="false"
            android:layout_weight="0.26"
            android:layout_margin="5dp" />
 
        <Button
            android:id="@+id/btnOpenFile"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/a2" />
 
    </TableRow>
    <TableLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
 
        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">
 
            <Button
                android:id="@+id/bIdnCode"
                android:layout_width="0dp"
                android:layout_height="70dp"
                android:layout_column="1"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.1"
                android:text="@string/textIdnCode"
                android:textColor="#010199" />
 
            <Button
                android:id="@+id/bInvoiceNum"
                android:layout_width="0dp"
                android:layout_height="70dp"
                android:layout_column="2"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.5"
                android:text="@string/colInvoiceNum"
                android:textColor="#010199" />
 
            <Button
                android:id="@+id/bPostDesc"
                android:layout_width="0dp"
                android:layout_height="70dp"
                android:layout_column="3"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.2"
                android:text="@string/colInvoiceNum"
                android:textColor="#010199" />
 
            <Button
                android:id="@+id/bInvoiceFullNum"
                android:layout_width="0dp"
                android:layout_height="70dp"
                android:layout_column="4"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.5"
                android:text="@string/colInvoiceNum"
                android:textColor="#010199" />
 
            <Button
                android:id="@+id/bParcelQw"
                android:layout_width="0dp"
                android:layout_height="70dp"
                android:layout_column="5"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.2"
                android:text="@string/colParcelQw"
                android:textColor="#010199" />
 
            <Button
                android:id="@+id/bZonaName"
                android:layout_width="0dp"
                android:layout_height="70dp"
                android:layout_column="6"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.2"
                android:text="@string/colZonaName"
                android:textColor="#010199" />
 
        </TableRow>
 
        <ListView
            android:id="@+id/lvData"
            android:layout_width="wrap_content"
            android:layout_height="637dp"
            android:choiceMode="multipleChoice" />
    </TableLayout>
 
    <TableRow
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal">
 
        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/btnOKRestore"
            android:src="@drawable/org_current_add"
            android:contentDescription="@string/btnrestore" />
 
        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/btnExitRestore"
            android:focusableInTouchMode="false"
            android:src="@drawable/btn_close_door"
            android:contentDescription="@string/btnexit" />
 
    </TableRow>
</LinearLayout>

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
 
    <TextView
        android:id="@+id/tRecNum"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.1"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#DCDCDC"
        android:gravity="center_vertical|right"/>
 
    <TextView
        android:id="@+id/tInvoiceNum"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.5"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#010199"
        android:gravity="center_vertical|center_horizontal" />
 
    <TextView
        android:id="@+id/tPostDesc"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.1"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#010199"
        android:gravity="center_vertical|center_horizontal" />
 
    <TextView
        android:id="@+id/tInvoiceFullNum"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.5"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#010199"
        android:gravity="center_vertical|center_horizontal" />
 
      <TextView
        android:id="@+id/tParcelQw"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.2"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#010199"
        android:gravity="center_vertical|center" />
 
    <TextView
        android:id="@+id/tZonaName"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.2"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#010199"
        android:textStyle="bold"
        android:gravity="center_vertical|center_horizontal" />
 
</LinearLayout>
когда доходит до строки
lvData.setAdapter(xAdapter);
происходит крушение!

очень прошу указать на мою ошибку

Добавлено через 4 минуты
даже при по шаговом прохождении ошибок не дает просто тупо крушится! импортер отрабатывает коректно! не могу понять что я делаю не так!!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.09.2016, 14:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Crash Activity при присвоении ItemList-у Adapter-a (Программирование Android):

NPE на присвоении адаптера листу, при скрещивании двух проектов - Программирование Android
Скрещивал два проекта (ActionBar Tabs и CustomizeListView). Вообщем Табы и на них лист. Все было хорошо, но при запуске выдает NPE при...

Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity - Программирование Android
У меня в параллельном потоке происходит куча apply() Решение использовать apply вместо commit было принято из-за скорости. Но...

Изменение layout-элементов одного activity из другого activity - Программирование Android
Здравствуйте! Я хочу изменить размер или цвет текста TextView в одном activity из второго activity, каким образом мне можно это...

Android - Передача данных с одного Activity на другое Activity - Программирование Android
Здравствуйте , возникла необходимость получения числовых (int и float ну или double) данных в одном Activity , а обработка и вывод...

Из одной Activity запустить функцию другой Activity - Программирование Android
например есть Activity2 которое я показываю в Dialog окошке, там у меня находятся Date and Time Picker ы (Дата - начало, Дата - окончание)...

Из одного Activity получить значение другого Activity - Программирование Android
Запускаю активити: public class MainActivity extends Activity { ... ... Intent intent = new Intent(getBaseContext(),...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
27.09.2016, 19:32  [ТС] #16
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import java.util.ArrayList;
 
public class ImportAdapter extends BaseAdapter {
    Context ctx;
    LayoutInflater lInflater;
    ArrayList<ImportData> objects;
 
    ImportAdapter(Context context, ArrayList<ImportData> products) {
        ctx = context;
        objects = products;
        lInflater = (LayoutInflater) ctx
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
 
    // кол-во элементов
    @Override
    public int getCount() {
        return objects.size();
    }
    // элемент по позиции
    @Override
    public Object getItem(int position) {
        return objects.get(position);
    }
 
    // id по позиции
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // используем созданные, но не используемые view
        View view = convertView;
        if (view == null) {
            view = lInflater.inflate(R.layout.list_item_for_import, parent, false);
        }
        ImportData p = getProduct(position);
        ((TextView) view.findViewById(R.id.tRecNum)).setText(p.getxRecNum());
        ((TextView) view.findViewById(R.id.tInvoiceNum)).setText(p.getxInvoiceNum());
        ((TextView) view.findViewById(R.id.tPostDesc)).setText(p.getxPostDesc());
        ((TextView) view.findViewById(R.id.tInvoiceFullNum)).setText(p.getxInvoiceFullNum());
        ((TextView) view.findViewById(R.id.tParcelQw)).setText(p.getxParcelQw());
        ((TextView) view.findViewById(R.id.tZonaDesc)).setText(p.getxZonaDesc());
        return view;
    }
 
    ImportData getProduct(int position) {
        return [COLOR="Red"]products[/COLOR].getItem(position);
    }
 
}

дает ошибку
Error58, 16) error: cannot find symbol variable products

как это иправить?
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
27.09.2016, 20:44 #17
Да ты определись уже, где у тебя objects, где products. Что за прикол одно и то же по разному обзывать. Мозг включи

Добавлено через 6 минут
Метод getРroducts возвращает objects, который равен products, который является параметром конструктора и равен iData. Бордель какой то
0
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
27.09.2016, 21:24  [ТС] #18
OlegJV, очень прошу просто напиши как мне переделать! у меня уже мозги не варят это маленкий сегмент проекта все остольное работает а сдать проект нкжно чере 12 часов (к утру) а я перегорел выручай
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
27.09.2016, 21:41 #19
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
public class ImportAdapter extends BaseAdapter {
    Context context;
    ArrayList<ImportData> products;
 
    ImportAdapter(Context context, ArrayList<ImportData> products) {
        this.context = context;
        this.products = products;
    }
 
    @Override
    public int getCount() {
        return products.size();
    }
 
    @Override
    public Object getItem(int position) {
        return products.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
    
    @Override
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = LayoutInflater.from(context);
        if (view == null) view = lInflater.inflate(R.layout.list_item_for_import, parent, false);
        (TextView) view.findViewById(R.id.tRecNum)).setText(products.getItem(position).getxRecNum());
        (TextView) view.findViewById(R.id.tInvoiceNum).setText(products.getItem(position).getxInvoiceNum());
        (TextView) view.findViewById(R.id.tPostDesc).setText(products.getItem(position).getxPostDesc());
        (TextView) view.findViewById(R.id.tInvoiceFullNum).setText(products.getItem(position).getxInvoiceFullNum());
        (TextView) view.findViewById(R.id.tParcelQw).setText(products.getItem(position).getxParcelQw());
        (TextView) view.findViewById(R.id.tZonaDesc).setText(products.getItem(position).getxZonaDesc());
        return view;
    }
}
Добавлено через 36 секунд
а то конца этому не будет

Добавлено через 14 минут
А в MainActivity сначала втыкать между строками "!", а потом делать split по "!" - это, конечно, гениальный ход.
0
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
27.09.2016, 22:15  [ТС] #20
Java
1
2
3
4
5
6
7
8
9
10
11
12
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = LayoutInflater.from(context);
        if (view == null) view = inflater.inflate(R.layout.list_item_for_import, parent, false);
 
        (TextView) view.findViewById(R.id.tRecNum)).setText(products.getItem(position).getxRecNum());
        (TextView) view.findViewById(R.id.tInvoiceNum).setText(products.getItem(position).getxInvoiceNum());
        (TextView) view.findViewById(R.id.tPostDesc).setText(products.getItem(position).getxPostDesc());
        (TextView) view.findViewById(R.id.tInvoiceFullNum).setText(products.getItem(position).getxInvoiceFullNum());
        (TextView) view.findViewById(R.id.tParcelQw).setText(products.getItem(position).getxParcelQw());
        (TextView) view.findViewById(R.id.tZonaDesc).setText(products.getItem(position).getxZonaDesc());
        return view;
    }
0
Миниатюры
Crash Activity при присвоении ItemList-у Adapter-a  
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
27.09.2016, 22:19  [ТС] #21
Цитата Сообщение от OlegJV Посмотреть сообщение
А в MainActivity сначала втыкать между строками "!", а потом делать split по "!" - это, конечно, гениальный ход.
ну что поделать нужно было как то строки отделять
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
27.09.2016, 22:45 #22
Я конечно не знаю, что ты там читаешь из файла, но у меня есть подозрение, что в активити лучше написать так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
ArrayList<ImportData> products = new ArrayList<ImportData>();
        try {
            File f = new File(aFileName);
            is = new FileInputStream(f);
            in = new InputStreamReader(is, "UTF-8");
            br = new BufferedReader(in);
            while ((str = br.readLine()) != null) {
                String tmp = br.readLine().split(",");
                                // при условии, что твоя строка действительно из пяти элементов, лучше конечно проверку добавить
                products.add(new ImportData(products.size() + 1, tmp[0], tmp[1], tmp[2], tmp[3], tmp[4]);
            }
            adapter = new ImportAdapter(this, products);
            lvData.setAdapter(adapter);
        }
Добавлено через 1 минуту
а свои анализы даты выкинь нафиг

Добавлено через 15 минут
Ну напиши тогда в адаптере так, будем каждую скобку твою проверять, делать же нечего больше

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@Override
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = LayoutInflater.from(context);
        if (view == null) view = inflater.inflate(R.layout.list_item_for_import, parent, false);
 
        TextView tRecNum = (TextView) view.findViewById(R.id.tRecNum);
        TextView tInvoiceNum = (TextView) view.findViewById(R.id.tInvoiceNum);
        TextView tPostDesc = (TextView) view.findViewById(R.id.tPostDesc);
        TextView tInvoiceFullNum = (TextView) view.findViewById(R.id.tInvoiceFullNum);
        TextView tParcelQw = (TextView) view.findViewById(R.id.tParcelQw);
        TextView tZonaDesc = (TextView) view.findViewById(R.id.tZonaDesc); // этого нет в разметке
 
        tRecNum.setText(products.get(position).getxRecNum());
        tInvoiceNum.setText(products.get(position).getxInvoiceNum());
        tPostDesc.setText(products.get(position).getxPostDesc());
        tInvoiceFullNum.setText(products.get(position).getxInvoiceFullNum()); // этого метода нет в ImportData
        tParcelQw.setText(products.get(position).getxParcelQw()); // этого метода нет в ImportData
        tZonaDesc.setText(products.get(position).getxZonaDesc()); // этого метода нет в ImportData
        return view;
    }
Добавлено через 2 минуты
Даю наводку: ошибки Android Studio подсвечивает красненьким
0
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
27.09.2016, 22:48  [ТС] #23
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
    @Override
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = LayoutInflater.from(context);
        if (view == null) view = inflater.inflate(R.layout.list_item_for_import, parent, false);
 
        ((TextView) view.findViewById(R.id.tRecNum)).setText(products.getItem(position).getxRecNum());
        ((TextView) view.findViewById(R.id.tInvoiceNum)).setText(products.getItem(position).getxInvoiceNum());
        ((TextView) view.findViewById(R.id.tPostDesc)).setText(products.getItem(position).getxPostDesc());
        ((TextView) view.findViewById(R.id.tInvoiceFullNum)).setText(products.getItem(position).getxInvoiceFullNum());
        ((TextView) view.findViewById(R.id.tParcelQw)).setText(products.getItem(position).getxParcelQw());
        ((TextView) view.findViewById(R.id.tZonaDesc)).setText(products.getItem(position).getxZonaDesc());
        return view;
    }
на счет setText я понял как поправить но с getItem что делать я не знаю
0
fraley
106 / 106 / 40
Регистрация: 24.05.2015
Сообщений: 320
27.09.2016, 22:49 #24
Цитата Сообщение от ArmenT Посмотреть сообщение
на счет setText я понял как поправить но с getItem что делать я не знаю
Просто скопируй, а:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Override
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = LayoutInflater.from(context);
        if (view == null)
            view = inflater.inflate(R.layout.list_item_for_import, parent, false);
        ((TextView) view.findViewById(R.id.tRecNum)).setText(getItem(position).getxInvoiceNum());
        ((TextView) view.findViewById(R.id.tRecNum)).setText(getItem(position).getxRecNum());
        ((TextView) view.findViewById(R.id.tInvoiceNum)).setText(getItem(position).getxInvoiceNum());
        ((TextView) view.findViewById(R.id.tPostDesc)).setText(getItem(position).getxPostDesc());
        ((TextView) view.findViewById(R.id.tInvoiceFullNum)).setText(getItem(position).getxInvoiceFullNum());
        ((TextView) view.findViewById(R.id.tParcelQw)).setText(getItem(position).getxParcelQw());
        ((TextView) view.findViewById(R.id.tZonaName)).setText(getItem(position).getxZonaDesc());
        return view;
    }
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
27.09.2016, 23:01 #25
Блин, я убьюсь сейчас. Зачем я сюда влез.

Добавлено через 3 минуты
У класса ImportData два конструктора, первый принимает (int, String, String, String, int, String), второй - шесть стрингов.
В первом конструкторе идет присвоение значений переменным. Второй конструктор пустой.
В своем суперметоде DataAnalize или как там его топикстартер сует в класс шесть стрингов. Угадайте с трех раз - какой конструктор сработает? Что в голове у этого человека? Я боюсь смотреть код дальше...

Добавлено через 3 минуты
Цитата Сообщение от ArmenT Посмотреть сообщение
а сдать проект нкжно чере 12 часов (к утру)
А если не сдашь, может оно и к лучшему будет, а?
0
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
27.09.2016, 23:09  [ТС] #26
это я заметил и дапно исправил

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
public class ImportData {
 
    private String xRecNum;
    private String xInvoiceNum;
    private String xPostDesc;
    private String xInvoiceFullNum;
    private String xParcelQw;
    private String xZonaDesc;
 
    public ImportData(String xRecNum, String xInvoiceNum, String xPostDesc, String xInvoiceFullNum, String xParcelQw, String xZonaDesc) {
        this.xRecNum = xRecNum;
        this.xInvoiceNum = xInvoiceNum;
        this.xPostDesc = xPostDesc;
        this.xInvoiceFullNum = xInvoiceFullNum;
        this.xParcelQw = xParcelQw;
        this.xZonaDesc = xZonaDesc;
    }
 
    public String getxRecNum() {
        return xRecNum;
    }
 
    public void setxRecNum(String xRecNum) {
        this.xRecNum = xRecNum;
    }
 
    public String getxInvoiceNum() {
        return xInvoiceNum;
    }
 
    public void setxInvoiceNum(String xInvoiceNum) {
        this.xInvoiceNum = xInvoiceNum;
    }
 
    public String getxPostDesc() {
        return xInvoiceNum;
    }
 
    public void setxPostDesc(String xPostDesc) {
        this.xPostDesc = xPostDesc;
    }
 
    public String getxInvoiceFullNum() {
        return xInvoiceNum;
    }
 
    public void setxInvoiceFullNum(String xInvoiceFullNum) {
        this.xInvoiceFullNum = xInvoiceFullNum;
    }
 
    public String getxParcelQw() {
        return xParcelQw;
    }
 
    public void setxParcelQw(String xParcelQw) {
        this.xParcelQw = xParcelQw;
    }
 
    public String getxZonaDesc() {
        return xPostDesc;
    }
 
    public void setxZonaDesc(String xPostDesc) {
        this.xPostDesc = xPostDesc;
    }
}
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
27.09.2016, 23:34 #27
И что дальше?

Добавлено через 13 минут
DataAnalise возвращает ArrayList<ImportData> aList.
потом идет присвоение: arrayList = DataAnalise(a);
а arrayList у нас arrayList = new ArrayList<String>(), если кто не помнит.
То есть ImportData == String, нуачо, вдруг прокатит...

Добавлено через 4 минуты
Java
1
list = new String[]{a};
загадочный массив из одной строки, который потом нигде не используется...

Добавлено через 26 секунд
а мне понравилось, пожалуй почитаю дальше)))
0
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
28.09.2016, 07:48  [ТС] #28
это мой первый опыт писания Android приложения

Может вместо того чтоб подкалывать напишите как исправить чтоб заработало
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
28.09.2016, 08:22 #29
То есть написать все за тебя? И какой опыт ты из этого получишь? Похоже тебе в другой раздел надо...

Добавлено через 21 минуту
Цитата Сообщение от ArmenT Посмотреть сообщение
напишите как исправить чтоб заработало
Вот как, допустим, я что-то напишу, даже не зная структуру твоего файла. После всего увиденного я совсем не уверен, что ты что-то из него получаешь. А если и получаешь, то что именно? В чем цель? Что программа должна делать вообще? Зачем ImportData в конструкторе принимает Integer, если в адаптере единственное действие для всех переменных - добавить их в TextView? Вот 6 переменных, все одинаково добавляются в TextView, но 4 из них - String, а 2 - int. Он должна потом что-то считать? В какой кодировке файл? Где он находится? Что за "UserCode" получает активити из интента? Откуда он там берется? Почему он имеет тип long, планируется больше двух миллиардов пользователей? Зачем ты пишешь свой адаптер, а потом в итоге впариваешь списку стандартный ArrayAdapter? Можно продолжать долго еще.
0
ArmenT
0 / 0 / 0
Регистрация: 18.09.2016
Сообщений: 44
28.09.2016, 09:29  [ТС] #30
то что ты видел это маленкий кусок от приложения! это схема заполнения базы данных из текстового файла! два поля Integer потому что они такие в базе данных но их преобразование не проблема! это система разрабатывается для проведения инвентаризации в термилах авиа линий!

А теперь если можно напишите кто то как мне залить содержимое текстового файла в ItemList
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.09.2016, 09:29
Привет! Вот еще темы с ответами:

Вызвать из одной activity функцию другой activity - Программирование Android
вызвать из одного activity функцию другой activity Подскажите, можно ли такое реализовать? Допустим у меня есть основная активити и...

Как вызвать Activity не из Activity? - Программирование Android
Приложение перехватываем входящие СМС. Есть класс унаследованный от BroadcastReceiver, который обозначен в манифесте как приемник...

Создание Activity в другом Activity - Программирование Android
Нормально ли создавать экземпляр какого-либо Activity в текущем Activity? Дело в том, что код, нужный для работы с данными находится в...

Ошибка при переходе на новое Activity - Программирование Android
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? При переходе на новое активити программа выдает ошибку и вылетает. Я...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
28.09.2016, 09:29
Ответ Создать тему
Опции темы

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