diff --git a/app/build.gradle b/app/build.gradle
index fae5328..ea2a79c 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@ android {
applicationId "com.chiragagg5k.bu_news_android"
minSdk 29
targetSdk 33
- versionCode 11
- versionName "1.6.0"
+ versionCode 13
+ versionName "1.6.5"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
@@ -39,7 +39,9 @@ dependencies {
implementation 'com.google.android.material:material:1.8.0' // Material Design
implementation 'androidx.constraintlayout:constraintlayout:2.1.4' // Constraint Layout
implementation platform('com.google.firebase:firebase-bom:31.2.2') // Firebase BOM
- implementation 'com.google.firebase:firebase-auth:21.2.0' // Firebase Auth
+ implementation ('com.google.firebase:firebase-auth:21.3.0'){
+ exclude module: "play-services-safetynet"
+ } // Firebase Auth
implementation 'com.google.firebase:firebase-database' // Firebase Realtime Database
implementation 'com.google.firebase:firebase-storage' // Firebase Storage
implementation 'de.hdodenhof:circleimageview:3.1.0'// Circle Image View
diff --git a/app/release/app-release.aab b/app/release/app-release.aab
index f16ddfb..8b171df 100644
Binary files a/app/release/app-release.aab and b/app/release/app-release.aab differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 3f7a117..c7a64cc 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -69,6 +69,11 @@
android:windowSoftInputMode="adjustResize">
+
+
+
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/DashboardActivity.java b/app/src/main/java/com/chiragagg5k/bu_news_android/DashboardActivity.java
index 4580bd8..68c1393 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/DashboardActivity.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/DashboardActivity.java
@@ -38,8 +38,6 @@
import org.jetbrains.annotations.NotNull;
-import java.util.Objects;
-
/**
* @author Chirag Aggarwal
*/
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/FoundFragment.java b/app/src/main/java/com/chiragagg5k/bu_news_android/FoundFragment.java
index 7119455..39db56f 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/FoundFragment.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/FoundFragment.java
@@ -11,7 +11,6 @@
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
-import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -63,9 +62,9 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
user = FirebaseAuth.getInstance().getCurrentUser();
- if (user !=null) {
+ if (user != null) {
setClickHereListener();
- }else{
+ } else {
foundTextView.setText("Found Something? Register to upload a post");
}
@@ -80,7 +79,7 @@ public void onDataChange(@NonNull DataSnapshot snapshot) {
lostFoundObjects.add(lostFoundObject);
}
- LostFoundAdaptor lostFoundAdaptor = new LostFoundAdaptor(lostFoundObjects, false);
+ LostFoundAdaptor lostFoundAdaptor = new LostFoundAdaptor(lostFoundObjects, false, getContext());
foundRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
foundRecyclerView.setAdapter(lostFoundAdaptor);
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/LoginFragment.java b/app/src/main/java/com/chiragagg5k/bu_news_android/LoginFragment.java
index f559528..08ca571 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/LoginFragment.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/LoginFragment.java
@@ -5,7 +5,6 @@
import android.text.Spannable;
import android.text.SpannableString;
import android.text.style.ClickableSpan;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundDetailActivity.java b/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundDetailActivity.java
new file mode 100644
index 0000000..1772a5f
--- /dev/null
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundDetailActivity.java
@@ -0,0 +1,68 @@
+package com.chiragagg5k.bu_news_android;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.appcompat.app.AppCompatActivity;
+
+import com.google.firebase.database.DataSnapshot;
+import com.google.firebase.database.DatabaseError;
+import com.google.firebase.database.DatabaseReference;
+import com.google.firebase.database.FirebaseDatabase;
+import com.google.firebase.database.ValueEventListener;
+import com.squareup.picasso.Picasso;
+
+public class LostFoundDetailActivity extends AppCompatActivity {
+
+ ImageView backBtn, detailedLostFound_Image;
+ TextView detailedLostFound_ItemName, detailedLostFound_ItemDescription, detailedLostFound_UploaderName, detailedLostFound_UploaderContact, detailedLostFound_ItemLocation;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_detailed_lostfound);
+
+ backBtn = findViewById(R.id.back_button);
+ detailedLostFound_ItemName = findViewById(R.id.detailedLostFound_ItemName);
+ detailedLostFound_ItemDescription = findViewById(R.id.detailedLostFound_ItemDescription);
+ detailedLostFound_UploaderName = findViewById(R.id.detailedLostFound_UploaderName);
+ detailedLostFound_UploaderContact = findViewById(R.id.detailedLostFound_UploaderContact);
+ detailedLostFound_Image = findViewById(R.id.detailedLostFound_Image);
+ detailedLostFound_ItemLocation = findViewById(R.id.detailedLostFound_ItemLocation);
+
+ Intent intent = getIntent();
+ String itemName = intent.getStringExtra("item_name");
+ String itemDescription = intent.getStringExtra("item_description");
+ String itemLocation = intent.getStringExtra("item_location");
+ String itemImageURL = intent.getStringExtra("item_image_url");
+ String uploaderUID = intent.getStringExtra("uploader_uid");
+ String uploaderContact = intent.getStringExtra("uploader_contact");
+
+ DatabaseReference userRef = FirebaseDatabase.getInstance().getReference("users").child(uploaderUID);
+ userRef.addValueEventListener(new ValueEventListener() {
+ @Override
+ public void onDataChange(@NonNull DataSnapshot snapshot) {
+ String uploaderName = snapshot.child("name").getValue().toString();
+ detailedLostFound_UploaderName.setText("Uploaded by: " + uploaderName);
+ }
+
+ @Override
+ public void onCancelled(@NonNull DatabaseError error) {
+
+ }
+ });
+
+ detailedLostFound_ItemName.setText(itemName);
+ detailedLostFound_ItemDescription.setText("Item Description: " + itemDescription);
+ detailedLostFound_UploaderContact.setText("Contact: " + uploaderContact);
+ detailedLostFound_ItemLocation.setText("Lost known location : " + itemLocation);
+
+ Picasso.get().load(itemImageURL).into(detailedLostFound_Image);
+
+ backBtn.setOnClickListener(v -> finish());
+ }
+}
+
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundUploadActivity.java b/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundUploadActivity.java
index 0387170..9ab6e9a 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundUploadActivity.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/LostFoundUploadActivity.java
@@ -5,7 +5,6 @@
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
-import android.view.View;
import android.webkit.MimeTypeMap;
import android.widget.Button;
import android.widget.EditText;
@@ -20,9 +19,7 @@
import androidx.appcompat.app.AppCompatActivity;
import com.chiragagg5k.bu_news_android.objects.LostFoundObject;
-import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.OnFailureListener;
-import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;
import com.google.firebase.database.DataSnapshot;
@@ -31,16 +28,13 @@
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import com.google.firebase.storage.FirebaseStorage;
-import com.google.firebase.storage.OnProgressListener;
import com.google.firebase.storage.StorageReference;
import com.google.firebase.storage.StorageTask;
-import com.google.firebase.storage.UploadTask;
-import com.squareup.picasso.Picasso;
public class LostFoundUploadActivity extends AppCompatActivity {
ImageView backBtn;
- EditText title, description,location, contact;
+ EditText title, description, location, contact;
TextView selectImageLabel;
Button selectImage, upload;
DatabaseReference lostFoundDatabase, lostDatabase, foundDatabase;
@@ -108,7 +102,6 @@ public void onCancelled(@NonNull DatabaseError error) {
});
-
upload.setOnClickListener(v -> {
String titleText = title.getText().toString();
String descriptionText = description.getText().toString();
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/LostFragment.java b/app/src/main/java/com/chiragagg5k/bu_news_android/LostFragment.java
index d06c784..9f5d2f7 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/LostFragment.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/LostFragment.java
@@ -6,7 +6,6 @@
import android.text.SpannableString;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -78,7 +77,7 @@ public void onDataChange(@NonNull DataSnapshot snapshot) {
lostFoundObjects.add(lostFoundObject);
}
- LostFoundAdaptor lostFoundAdaptor = new LostFoundAdaptor(lostFoundObjects, true);
+ LostFoundAdaptor lostFoundAdaptor = new LostFoundAdaptor(lostFoundObjects, true, getContext());
lostRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
lostRecyclerView.setAdapter(lostFoundAdaptor);
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/PostFragment.java b/app/src/main/java/com/chiragagg5k/bu_news_android/PostFragment.java
index e941292..59830ac 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/PostFragment.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/PostFragment.java
@@ -27,8 +27,13 @@
import com.chiragagg5k.bu_news_android.objects.NewsObject;
import com.daimajia.androidanimations.library.Techniques;
import com.daimajia.androidanimations.library.YoYo;
+import com.google.firebase.auth.FirebaseAuth;
+import com.google.firebase.auth.FirebaseUser;
+import com.google.firebase.database.DataSnapshot;
+import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
+import com.google.firebase.database.ValueEventListener;
import com.google.firebase.storage.FirebaseStorage;
import com.google.firebase.storage.StorageReference;
import com.google.firebase.storage.StorageTask;
@@ -37,16 +42,17 @@
@SuppressWarnings("rawtypes")
public class PostFragment extends Fragment {
- TextView image_status;
+ TextView image_status, what_to_post_tv;
EditText heading, description;
Button choose_image, post_button;
ImageView preview_image;
StorageReference storageRef;
- DatabaseReference databaseRef;
+ DatabaseReference databaseRef, userRef;
StorageTask uploadTask;
Uri image_uri;
Spinner category_spinner;
ArrayAdapter category_adapter;
+ FirebaseUser user;
/**
* This is the callback for the result of the activity started by selectImage()
@@ -91,10 +97,14 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
image_status = view.findViewById(R.id.selected_image_tv);
category_spinner = view.findViewById(R.id.categories_spinner);
preview_image = view.findViewById(R.id.preview_image);
+ what_to_post_tv = view.findViewById(R.id.what_to_post_tv);
storageRef = FirebaseStorage.getInstance().getReference("uploads");
databaseRef = FirebaseDatabase.getInstance().getReference("uploads");
+ user = FirebaseAuth.getInstance().getCurrentUser();
+ userRef = FirebaseDatabase.getInstance().getReference("users").child(user.getUid());
+
category_adapter = ArrayAdapter.createFromResource(getContext(), R.array.choice_category_names, android.R.layout.simple_spinner_item);
category_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
category_spinner.setAdapter(category_adapter);
@@ -111,6 +121,47 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
}
});
+
+ userRef.addValueEventListener(new ValueEventListener() {
+ @Override
+ public void onDataChange(@NonNull DataSnapshot snapshot) {
+ DataSnapshot lastPostTimeSnapshot = snapshot.child("lastPostTime");
+ DataSnapshot isAdminSnapshot = snapshot.child("admin");
+ Boolean isAdmin = isAdminSnapshot.getValue(Boolean.class);
+
+ if (isAdmin != null && isAdmin) {
+ what_to_post_tv.setText("You are an admin. You can post anything you want without cooldown.");
+ return;
+ }
+
+ if (!lastPostTimeSnapshot.exists()) {
+ return;
+ }
+
+ long lastPostTime = lastPostTimeSnapshot.getValue(Long.class);
+ long currentTime = System.currentTimeMillis();
+ long timeDiff = currentTime - lastPostTime;
+ if (timeDiff < 7200000) {
+ post_button.setEnabled(false);
+ choose_image.setEnabled(false);
+
+ try {
+ post_button.setBackgroundColor(getResources().getColor(R.color.backgroundColorDarker));
+ choose_image.setBackgroundColor(getResources().getColor(R.color.backgroundColorDarker));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+
+ what_to_post_tv.setText("Sorry for not informing in advance that posting has a cooldown of 2hrs! You can post again in " + (120 - timeDiff / 60000) + " minutes. Please wait.");
+ }
+ }
+
+ @Override
+ public void onCancelled(@NonNull DatabaseError error) {
+
+ }
+ });
}
/**
@@ -175,6 +226,9 @@ private void post() {
if (uploadId != null) databaseRef.child(uploadId).setValue(upload);
});
+ // update the last post time
+ userRef.child("lastPostTime").setValue(System.currentTimeMillis());
+
// clear the fields after 1 seconds
new Handler().postDelayed(() -> {
heading.setText("");
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/ProfileActivity.java b/app/src/main/java/com/chiragagg5k/bu_news_android/ProfileActivity.java
index 7e27ea1..36afa76 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/ProfileActivity.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/ProfileActivity.java
@@ -3,11 +3,8 @@
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
-import android.text.InputType;
import android.util.Log;
-import android.view.LayoutInflater;
import android.view.View;
-import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
@@ -138,7 +135,7 @@ public void onClick(View view) {
});
- }else {
+ } else {
Toast.makeText(ProfileActivity.this, "Authentication failed", Toast.LENGTH_SHORT).show();
dialog.cancel();
}
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/adaptors/LostFoundAdaptor.java b/app/src/main/java/com/chiragagg5k/bu_news_android/adaptors/LostFoundAdaptor.java
index c28b025..f7b8acf 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/adaptors/LostFoundAdaptor.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/adaptors/LostFoundAdaptor.java
@@ -1,6 +1,7 @@
package com.chiragagg5k.bu_news_android.adaptors;
-import android.net.Uri;
+import android.content.Context;
+import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -10,20 +11,23 @@
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
+import com.chiragagg5k.bu_news_android.LostFoundDetailActivity;
import com.chiragagg5k.bu_news_android.R;
import com.chiragagg5k.bu_news_android.objects.LostFoundObject;
import com.squareup.picasso.Picasso;
import java.util.ArrayList;
-public class LostFoundAdaptor extends RecyclerView.Adapter{
+public class LostFoundAdaptor extends RecyclerView.Adapter {
ArrayList lostFoundObjects;
boolean isLost;
+ private final Context context;
- public LostFoundAdaptor(ArrayList lostFoundObjects, boolean isLost) {
+ public LostFoundAdaptor(ArrayList lostFoundObjects, boolean isLost, Context context) {
this.lostFoundObjects = lostFoundObjects;
this.isLost = isLost;
+ this.context = context;
}
@NonNull
@@ -41,6 +45,18 @@ public void onBindViewHolder(@NonNull LostFoundAdaptor.ViewHolder holder, int po
Picasso.get().load(lostFoundObjects.get(position).getItemImageURL()).fit().centerCrop().into(holder.itemImage);
+ holder.itemView.setOnClickListener(v -> {
+ Intent intent = new Intent(v.getContext(), LostFoundDetailActivity.class);
+ intent.putExtra("item_name", lostFoundObjects.get(position).getItemName());
+ intent.putExtra("item_description", lostFoundObjects.get(position).getItemDescription());
+ intent.putExtra("item_location", lostFoundObjects.get(position).getItemLocation());
+ intent.putExtra("item_image_url", lostFoundObjects.get(position).getItemImageURL());
+ intent.putExtra("item_date", lostFoundObjects.get(position).getItemDate());
+ intent.putExtra("uploader_uid", lostFoundObjects.get(position).getToContactUID());
+ intent.putExtra("uploader_contact", lostFoundObjects.get(position).getContactNo());
+
+ context.startActivity(intent);
+ });
}
@Override
diff --git a/app/src/main/java/com/chiragagg5k/bu_news_android/objects/LostFoundObject.java b/app/src/main/java/com/chiragagg5k/bu_news_android/objects/LostFoundObject.java
index e74325f..7c7f2eb 100644
--- a/app/src/main/java/com/chiragagg5k/bu_news_android/objects/LostFoundObject.java
+++ b/app/src/main/java/com/chiragagg5k/bu_news_android/objects/LostFoundObject.java
@@ -4,10 +4,9 @@
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;
-import java.util.Objects;
-
public class LostFoundObject {
+ FirebaseUser user;
private String itemName;
private String itemDescription;
private String itemLocation;
@@ -15,7 +14,6 @@ public class LostFoundObject {
private String toContactUID;
private String itemImageURL;
private String contactNo;
- FirebaseUser user;
public LostFoundObject() {
// !IMPORTANT: This constructor is required for Firebase to work
diff --git a/app/src/main/res/layout/activity_add_event.xml b/app/src/main/res/layout/activity_add_event.xml
index 5d3afcb..6a952c2 100644
--- a/app/src/main/res/layout/activity_add_event.xml
+++ b/app/src/main/res/layout/activity_add_event.xml
@@ -5,7 +5,8 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:theme="@style/Theme.BUNewsAndroidDark"
- tools:context=".EditProfileActivity">
+ tools:context=".EditProfileActivity"
+ tools:ignore="HardcodedText">
+ android:textSize="18sp" />
+ android:inputType="text"
+ android:labelFor="@+id/event_description_label"
+ android:padding="8dp"
+ android:textSize="18sp" />
@@ -24,7 +25,7 @@
@@ -92,13 +93,12 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@color/colorPrimary"
+ android:contentDescription="Floating Action Post"
android:src="@drawable/post_icon_foreground"
app:borderWidth="0dp"
app:layout_anchor="@id/app_bar"
app:maxImageSize="40dp"
- app:tint="@color/white"
- android:contentDescription="Floating Action Post"
- />
+ app:tint="@color/white" />
@@ -126,8 +126,8 @@
android:layout_height="48dp"
android:layout_marginBottom="30dp"
android:gravity="center"
- android:textSize="13sp"
- android:text="Made by Team Obsidian\nver. 1.6.0" />
+ android:text="Made by Team Obsidian\nver. 1.6.5"
+ android:textSize="13sp" />
diff --git a/app/src/main/res/layout/activity_detailed_lostfound.xml b/app/src/main/res/layout/activity_detailed_lostfound.xml
new file mode 100644
index 0000000..97a659b
--- /dev/null
+++ b/app/src/main/res/layout/activity_detailed_lostfound.xml
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_edit_profile.xml b/app/src/main/res/layout/activity_edit_profile.xml
index c679c2c..68fd123 100644
--- a/app/src/main/res/layout/activity_edit_profile.xml
+++ b/app/src/main/res/layout/activity_edit_profile.xml
@@ -68,6 +68,7 @@
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:backgroundTint="@color/colorPrimary"
+ android:contentDescription="@string/edit_profile_image"
android:src="@drawable/edit_icon"
app:borderWidth="0dp"
app:layout_constraintBottom_toBottomOf="parent"
@@ -75,8 +76,7 @@
app:layout_constraintHorizontal_bias="0.676"
app:layout_constraintStart_toStartOf="parent"
app:maxImageSize="25dp"
- app:tint="@color/white"
- android:contentDescription="@string/edit_profile_image" />
+ app:tint="@color/white" />
@@ -112,9 +112,9 @@
android:id="@+id/mini_profile_icon"
android:layout_width="30dp"
android:layout_height="30dp"
+ android:contentDescription="@string/profile_image"
android:src="@drawable/profile_icon"
- app:tint="@color/colorPrimary"
- android:contentDescription="@string/profile_image" />
+ app:tint="@color/colorPrimary" />
+ android:singleLine="true"
+ android:text="@string/placeholder_name_to_be_replaced"
+ android:textSize="14sp" />
@@ -232,15 +231,14 @@
android:layout_alignParentEnd="true"
android:layout_marginEnd="10dp"
android:layout_toEndOf="@+id/contact_label"
+ android:autofillHints="Contact"
android:backgroundTint="@color/textColor"
+ android:inputType="phone"
+ android:labelFor="@+id/edit_contact_text"
android:singleLine="true"
android:text="@string/placeholder_contact"
android:textAlignment="textEnd"
- android:textSize="14sp"
- android:autofillHints="Contact"
- android:inputType="phone"
- android:labelFor="@+id/edit_contact_text"
- />
+ android:textSize="14sp" />
@@ -287,15 +285,14 @@
android:layout_alignParentEnd="true"
android:layout_marginEnd="10dp"
android:layout_toEndOf="@+id/address_label"
+ android:autofillHints="Zip Code"
android:backgroundTint="@color/textColor"
+ android:inputType="text"
+ android:labelFor="@+id/edit_address_text"
android:singleLine="true"
android:text="@string/placeholder_address"
android:textAlignment="textEnd"
- android:textSize="14sp"
- android:autofillHints="Zip Code"
- android:inputType="text"
- android:labelFor="@+id/edit_address_text"
- />
+ android:textSize="14sp" />
diff --git a/app/src/main/res/layout/activity_upload_lostfound.xml b/app/src/main/res/layout/activity_upload_lostfound.xml
index 7ba8c63..2f190e4 100644
--- a/app/src/main/res/layout/activity_upload_lostfound.xml
+++ b/app/src/main/res/layout/activity_upload_lostfound.xml
@@ -134,15 +134,14 @@
android:textStyle="bold" />
+ android:textColor="@color/textColor" />