Skip to content

Commit 0f7d64b

Browse files
committed
Show card data in a TextView when viewing
Earlier when a card was viewed it was shown in an EditView which was disabled. This was not optimal, as the resulting text was dimmed. To help the text be easier to read, a TextView is now used to display the data. In addition, the layout of the card viewing screen has been adjusted
1 parent 330b6ec commit 0f7d64b

File tree

3 files changed

+145
-95
lines changed

3 files changed

+145
-95
lines changed

app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java

+41-23
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import android.widget.Button;
2222
import android.widget.EditText;
2323
import android.widget.ImageView;
24+
import android.widget.TextView;
2425

2526
import com.google.zxing.BarcodeFormat;
2627
import com.google.zxing.integration.android.IntentIntegrator;
@@ -74,9 +75,12 @@ public void onResume()
7475
}
7576
}
7677

77-
final EditText storeField = (EditText) findViewById(R.id.storeName);
78-
final EditText noteField = (EditText) findViewById(R.id.note);
79-
final EditText cardIdField = (EditText) findViewById(R.id.cardId);
78+
final EditText storeFieldEdit = (EditText) findViewById(R.id.storeNameEdit);
79+
final TextView storeFieldView = (TextView) findViewById(R.id.storeNameView);
80+
final EditText noteFieldEdit = (EditText) findViewById(R.id.noteEdit);
81+
final TextView noteFieldView = (TextView) findViewById(R.id.noteView);
82+
final EditText cardIdFieldEdit = (EditText) findViewById(R.id.cardIdEdit);
83+
final TextView cardIdFieldView = (TextView) findViewById(R.id.cardIdView);
8084
final EditText barcodeTypeField = (EditText) findViewById(R.id.barcodeType);
8185
final ImageView barcodeImage = (ImageView) findViewById(R.id.barcode);
8286
final View barcodeIdLayout = findViewById(R.id.barcodeIdLayout);
@@ -95,35 +99,36 @@ public void onResume()
9599
{
96100
final LoyaltyCard loyaltyCard = db.getLoyaltyCard(loyaltyCardId);
97101

98-
if(storeField.getText().length() == 0)
102+
if(storeFieldEdit.getText().length() == 0)
99103
{
100-
storeField.setText(loyaltyCard.store);
104+
storeFieldEdit.setText(loyaltyCard.store);
105+
storeFieldView.setText(loyaltyCard.store);
101106
}
102107

103-
if(noteField.getText().length() == 0)
108+
if(noteFieldEdit.getText().length() == 0)
104109
{
105-
noteField.setText(loyaltyCard.note);
110+
noteFieldEdit.setText(loyaltyCard.note);
111+
noteFieldView.setText(loyaltyCard.note);
106112
}
107113

108-
if(cardIdField.getText().length() == 0)
114+
if(cardIdFieldEdit.getText().length() == 0)
109115
{
110-
cardIdField.setText(loyaltyCard.cardId);
116+
cardIdFieldEdit.setText(loyaltyCard.cardId);
117+
cardIdFieldView.setText(loyaltyCard.cardId);
111118
}
112119

113120
if(barcodeTypeField.getText().length() == 0)
114121
{
115122
barcodeTypeField.setText(loyaltyCard.barcodeType);
116123
}
117124

118-
if(viewLoyaltyCard)
119-
{
120-
storeField.setEnabled(false);
121-
noteField.setEnabled(false);
122-
}
123-
124125
if(updateLoyaltyCard)
125126
{
126127
setTitle(R.string.editCardTitle);
128+
129+
storeFieldView.setVisibility(View.GONE);
130+
noteFieldView.setVisibility(View.GONE);
131+
cardIdFieldView.setVisibility(View.GONE);
127132
}
128133
else
129134
{
@@ -132,25 +137,33 @@ public void onResume()
132137
saveButton.setVisibility(View.GONE);
133138
cancelButton.setVisibility(View.GONE);
134139
setTitle(R.string.viewCardTitle);
140+
141+
storeFieldEdit.setVisibility(View.GONE);
142+
noteFieldEdit.setVisibility(View.GONE);
143+
cardIdFieldEdit.setVisibility(View.GONE);
135144
}
136145
}
137146
else
138147
{
139148
setTitle(R.string.addCardTitle);
149+
150+
storeFieldView.setVisibility(View.GONE);
151+
noteFieldView.setVisibility(View.GONE);
152+
cardIdFieldView.setVisibility(View.GONE);
140153
}
141154

142-
if(cardIdField.getText().length() == 0)
155+
if(cardIdFieldEdit.getText().length() == 0)
143156
{
144157
barcodeIdLayout.setVisibility(View.GONE);
145158
}
146159

147160
barcodeTypeLayout.setVisibility(View.GONE);
148161

149-
if(cardIdField.getText().length() > 0 && barcodeTypeField.getText().length() > 0)
162+
if(cardIdFieldEdit.getText().length() > 0 && barcodeTypeField.getText().length() > 0)
150163
{
151164
String formatString = barcodeTypeField.getText().toString();
152165
final BarcodeFormat format = BarcodeFormat.valueOf(formatString);
153-
final String cardIdString = cardIdField.getText().toString();
166+
final String cardIdString = cardIdFieldEdit.getText().toString();
154167

155168
if(barcodeImage.getHeight() == 0)
156169
{
@@ -218,9 +231,9 @@ public void onClick(View v)
218231
@Override
219232
public void onClick(final View v)
220233
{
221-
String store = storeField.getText().toString();
222-
String note = noteField.getText().toString();
223-
String cardId = cardIdField.getText().toString();
234+
String store = storeFieldEdit.getText().toString();
235+
String note = noteFieldEdit.getText().toString();
236+
String cardId = cardIdFieldEdit.getText().toString();
224237
String barcodeType = barcodeTypeField.getText().toString();
225238

226239
if(store.isEmpty())
@@ -364,8 +377,13 @@ public void onActivityResult(int requestCode, int resultCode, Intent intent)
364377
Log.i(TAG, "Read barcode id: " + contents);
365378
Log.i(TAG, "Read format: " + format);
366379

367-
final EditText cardIdField = (EditText) findViewById(R.id.cardId);
368-
cardIdField.setText(contents);
380+
for(TextView view : new TextView[]{
381+
(EditText) findViewById(R.id.cardIdEdit),
382+
(TextView) findViewById(R.id.cardIdView)})
383+
{
384+
view.setText(contents);
385+
}
386+
369387
final EditText barcodeTypeField = (EditText) findViewById(R.id.barcodeType);
370388
barcodeTypeField.setText(format);
371389
onResume();

app/src/main/res/layout/loyalty_card_view_activity.xml

+44-34
Original file line numberDiff line numberDiff line change
@@ -29,79 +29,89 @@
2929
android:layout_width="fill_parent"
3030
android:layout_height="wrap_content">
3131
<LinearLayout android:orientation="horizontal"
32-
android:padding="10.0dip"
32+
android:padding="10dip"
3333
android:layout_width="fill_parent"
3434
android:layout_height="wrap_content">
35-
<TextView android:textSize="16.0sp"
35+
<TextView android:textSize="@dimen/text_size_medium"
3636
android:textStyle="bold"
3737
android:layout_gravity="center_vertical"
38-
android:paddingStart="20.0dip"
39-
android:paddingEnd="20.0dip"
4038
android:layout_width="wrap_content"
4139
android:layout_height="wrap_content"
40+
android:paddingStart="20.0dip"
41+
android:paddingEnd="20.0dip"
4242
android:labelFor="@+id/storeName"
4343
android:text="@string/storeName" />
44-
<LinearLayout android:orientation="vertical"
45-
android:layout_width="fill_parent"
46-
android:layout_height="wrap_content">
47-
<EditText android:id="@+id/storeName"
48-
android:layout_width="fill_parent"
49-
android:layout_height="wrap_content"
50-
android:inputType="text"/>
51-
</LinearLayout>
44+
<EditText android:id="@+id/storeNameEdit"
45+
android:layout_width="fill_parent"
46+
android:layout_height="wrap_content"
47+
android:inputType="text"
48+
android:textSize="@dimen/text_size_medium"/>
49+
<TextView android:id="@+id/storeNameView"
50+
android:layout_width="fill_parent"
51+
android:layout_height="wrap_content"
52+
android:paddingTop="10dip"
53+
android:paddingBottom="10dip"
54+
android:textSize="@dimen/text_size_medium"/>
5255
</LinearLayout>
5356
<LinearLayout android:orientation="horizontal"
54-
android:padding="10.0dip"
57+
android:padding="10dip"
5558
android:layout_width="fill_parent"
5659
android:layout_height="wrap_content">
57-
<TextView android:textSize="16.0sp"
60+
<TextView android:textSize="@dimen/text_size_medium"
5861
android:textStyle="bold"
5962
android:layout_gravity="center_vertical"
60-
android:paddingStart="20.0dip"
61-
android:paddingEnd="20.0dip"
6263
android:layout_width="wrap_content"
6364
android:layout_height="wrap_content"
65+
android:paddingStart="20.0dip"
66+
android:paddingEnd="20.0dip"
6467
android:labelFor="@+id/note"
6568
android:text="@string/note" />
66-
<LinearLayout android:orientation="vertical"
67-
android:layout_width="fill_parent"
68-
android:layout_height="wrap_content">
69-
<EditText android:id="@+id/note"
70-
android:layout_width="fill_parent"
71-
android:layout_height="wrap_content"
72-
android:inputType="text"/>
73-
</LinearLayout>
69+
<EditText android:id="@+id/noteEdit"
70+
android:layout_width="fill_parent"
71+
android:layout_height="wrap_content"
72+
android:inputType="text"
73+
android:textSize="@dimen/text_size_medium"/>
74+
<TextView android:id="@+id/noteView"
75+
android:layout_width="fill_parent"
76+
android:layout_height="wrap_content"
77+
android:paddingTop="10dip"
78+
android:paddingBottom="10dip"
79+
android:textSize="@dimen/text_size_medium"/>
7480
</LinearLayout>
7581
<LinearLayout android:orientation="horizontal"
76-
android:padding="10.0dip"
82+
android:padding="10dip"
7783
android:layout_width="fill_parent"
7884
android:layout_height="wrap_content"
7985
android:id="@+id/barcodeIdLayout">
80-
<TextView android:textSize="16.0sp"
86+
<TextView android:textSize="@dimen/text_size_medium"
8187
android:textStyle="bold"
8288
android:layout_gravity="center_vertical"
83-
android:paddingStart="20.0dip"
84-
android:paddingEnd="20.0dip"
8589
android:layout_width="wrap_content"
8690
android:layout_height="wrap_content"
91+
android:paddingStart="20.0dip"
92+
android:paddingEnd="20.0dip"
8793
android:labelFor="@+id/cardId"
8894
android:text="@string/cardId" />
89-
<EditText android:id="@+id/cardId"
95+
<EditText android:id="@+id/cardIdEdit"
9096
android:layout_width="fill_parent"
9197
android:layout_height="wrap_content"
9298
android:enabled="false"
93-
android:inputType="text"/>
99+
android:inputType="text"
100+
android:textSize="@dimen/text_size_medium"/>
101+
<TextView android:id="@+id/cardIdView"
102+
android:layout_width="fill_parent"
103+
android:layout_height="wrap_content"
104+
android:paddingTop="10dip"
105+
android:paddingBottom="10dip"
106+
android:textSize="@dimen/text_size_medium"/>
94107
</LinearLayout>
95108
<LinearLayout android:orientation="horizontal"
96-
android:padding="10.0dip"
97109
android:layout_width="fill_parent"
98110
android:layout_height="wrap_content"
99111
android:id="@+id/barcodeTypeLayout">
100-
<TextView android:textSize="16.0sp"
112+
<TextView android:textSize="@dimen/text_size_medium"
101113
android:textStyle="bold"
102114
android:layout_gravity="center_vertical"
103-
android:paddingStart="20.0dip"
104-
android:paddingEnd="20.0dip"
105115
android:layout_width="wrap_content"
106116
android:layout_height="wrap_content"
107117
android:labelFor="@+id/barcodeType"

0 commit comments

Comments
 (0)