preyearegmi
6 years ago
12 changed files with 4 additions and 1459 deletions
-
70app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/adapter/RecipientCountryListingRvAdapter.java
-
59app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/adapter/RecipientDistrictListingRvAdapter.java
-
60app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/adapter/RecipientProvinceListingRvAdapter.java
-
59app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/adapter/RecipientRelationListingRvAdapter.java
-
59app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/adapter/RecipientTransferListingRvAdapter.java
-
202app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/view/RecipientCountryListingDialog.java
-
206app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/view/RecipientDistrictListingDialog.java
-
204app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/view/RecipientProvinceListingDialog.java
-
202app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/view/RecipientRelationListingDialog.java
-
204app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/view/RecipientTransferListingDialog.java
-
134app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV2/view/recipientadd/RecipientAddV2Activity.java
-
4app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/view/payoutmode/PayoutModeBankListingDialog.java
@ -1,70 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.adapter; |
|||
|
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.view.LayoutInflater; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
|
|||
import com.bumptech.glide.Glide; |
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.customwidgets.exchangecountrylistingdialog.CountryFlagMapper; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.CountryDetailModel; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientCountryListRvViewHolder; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientCountryListingDialog; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientCountryListingRvAdapter extends RecyclerView.Adapter<RecipientCountryListRvViewHolder> { |
|||
|
|||
private final RecipientCountryListingDialog.CountrySelectionListener listener; |
|||
private List<CountryDetailModel> data; |
|||
|
|||
public RecipientCountryListingRvAdapter(RecipientCountryListingDialog.CountrySelectionListener listener) { |
|||
this.data=new ArrayList<>(); |
|||
this.listener=listener; |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public RecipientCountryListRvViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
|||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.countrylist_item_view, parent, false); |
|||
return new RecipientCountryListRvViewHolder(view); } |
|||
|
|||
@Override |
|||
public void onBindViewHolder(final RecipientCountryListRvViewHolder holder, int position) { |
|||
holder.itemView.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
if(listener!=null) |
|||
listener.onCountrySelected(data.get(holder.getAdapterPosition())); |
|||
} |
|||
}); |
|||
CountryDetailModel countryPaymentService= data.get(position); |
|||
|
|||
int flagId=CountryFlagMapper.getFlagFromCountryCode(countryPaymentService.getCode()); |
|||
if(flagId!=-1) |
|||
{ |
|||
Glide.with(holder.getCountrFlagImageView().getContext()) |
|||
.load(flagId) |
|||
.into(holder.getCountrFlagImageView()); |
|||
} |
|||
|
|||
holder.setCountryName(countryPaymentService.getName()); |
|||
} |
|||
|
|||
@Override |
|||
public int getItemCount() { |
|||
return data.size(); |
|||
} |
|||
|
|||
public void setData(List<CountryDetailModel> data) { |
|||
if(data!=null) |
|||
{ |
|||
this.data=data; |
|||
notifyDataSetChanged(); |
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -1,59 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.adapter; |
|||
|
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.view.LayoutInflater; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.DistrictDetailModel; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientDistrictListingDialog; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientProvinceListRvViewHolder; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientDistrictListingRvAdapter extends RecyclerView.Adapter<RecipientProvinceListRvViewHolder> { |
|||
|
|||
private final RecipientDistrictListingDialog.DistrictSelectionListener listener; |
|||
private List<DistrictDetailModel> data; |
|||
|
|||
public RecipientDistrictListingRvAdapter(RecipientDistrictListingDialog.DistrictSelectionListener listener) { |
|||
this.data=new ArrayList<>(); |
|||
this.listener=listener; |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public RecipientProvinceListRvViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
|||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.provincelist_item_view, parent, false); |
|||
return new RecipientProvinceListRvViewHolder(view); } |
|||
|
|||
@Override |
|||
public void onBindViewHolder(final RecipientProvinceListRvViewHolder holder, int position) { |
|||
holder.itemView.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
if(listener!=null) |
|||
listener.onDistrictSelected(data.get(holder.getAdapterPosition())); |
|||
} |
|||
}); |
|||
DistrictDetailModel province= data.get(position); |
|||
holder.setName(province.getText()); |
|||
} |
|||
|
|||
@Override |
|||
public int getItemCount() { |
|||
return data.size(); |
|||
} |
|||
|
|||
public void setData(List<DistrictDetailModel> data) { |
|||
if(data!=null) |
|||
{ |
|||
this.data=data; |
|||
notifyDataSetChanged(); |
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -1,60 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.adapter; |
|||
|
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.view.LayoutInflater; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.ProvinceDetailModel; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientProvinceListRvViewHolder; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientProvinceListingDialog; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientProvinceListingRvAdapter extends RecyclerView.Adapter<RecipientProvinceListRvViewHolder> { |
|||
|
|||
private final RecipientProvinceListingDialog.ProvinceSelectionListener listener; |
|||
private List<ProvinceDetailModel> data; |
|||
|
|||
public RecipientProvinceListingRvAdapter(RecipientProvinceListingDialog.ProvinceSelectionListener listener) { |
|||
this.data=new ArrayList<>(); |
|||
this.listener=listener; |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public RecipientProvinceListRvViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
|||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.provincelist_item_view, parent, false); |
|||
return new RecipientProvinceListRvViewHolder(view); |
|||
} |
|||
|
|||
@Override |
|||
public void onBindViewHolder(final RecipientProvinceListRvViewHolder holder, int position) { |
|||
holder.itemView.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
if(listener!=null) |
|||
listener.onProvinceSelected(data.get(holder.getAdapterPosition())); |
|||
} |
|||
}); |
|||
ProvinceDetailModel province= data.get(position); |
|||
holder.setName(province.getText()); |
|||
} |
|||
|
|||
@Override |
|||
public int getItemCount() { |
|||
return data.size(); |
|||
} |
|||
|
|||
public void setData(List<ProvinceDetailModel> data) { |
|||
if(data!=null) |
|||
{ |
|||
this.data=data; |
|||
notifyDataSetChanged(); |
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -1,59 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.adapter; |
|||
|
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.view.LayoutInflater; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.RelationDetailModel; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientProvinceListRvViewHolder; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientRelationListingDialog; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientRelationListingRvAdapter extends RecyclerView.Adapter<RecipientProvinceListRvViewHolder> { |
|||
|
|||
private final RecipientRelationListingDialog.RelationSelectionListener listener; |
|||
private List<RelationDetailModel> data; |
|||
|
|||
public RecipientRelationListingRvAdapter(RecipientRelationListingDialog.RelationSelectionListener listener) { |
|||
this.data=new ArrayList<>(); |
|||
this.listener=listener; |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public RecipientProvinceListRvViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
|||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.provincelist_item_view, parent, false); |
|||
return new RecipientProvinceListRvViewHolder(view); } |
|||
|
|||
@Override |
|||
public void onBindViewHolder(final RecipientProvinceListRvViewHolder holder, int position) { |
|||
holder.itemView.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
if(listener!=null) |
|||
listener.onRelationSelected(data.get(holder.getAdapterPosition())); |
|||
} |
|||
}); |
|||
RelationDetailModel relationData= data.get(position); |
|||
holder.setName(relationData.getText()); |
|||
} |
|||
|
|||
@Override |
|||
public int getItemCount() { |
|||
return data.size(); |
|||
} |
|||
|
|||
public void setData(List<RelationDetailModel> data) { |
|||
if(data!=null) |
|||
{ |
|||
this.data=data; |
|||
notifyDataSetChanged(); |
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -1,59 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.adapter; |
|||
|
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.view.LayoutInflater; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.TransferDetailModel; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientProvinceListRvViewHolder; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.view.RecipientTransferListingDialog; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientTransferListingRvAdapter extends RecyclerView.Adapter<RecipientProvinceListRvViewHolder> { |
|||
|
|||
private final RecipientTransferListingDialog.TransferReasonSelectionListener listener; |
|||
private List<TransferDetailModel> data; |
|||
|
|||
public RecipientTransferListingRvAdapter(RecipientTransferListingDialog.TransferReasonSelectionListener listener) { |
|||
this.data=new ArrayList<>(); |
|||
this.listener=listener; |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public RecipientProvinceListRvViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
|||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.provincelist_item_view, parent, false); |
|||
return new RecipientProvinceListRvViewHolder(view); } |
|||
|
|||
@Override |
|||
public void onBindViewHolder(final RecipientProvinceListRvViewHolder holder, int position) { |
|||
holder.itemView.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
if(listener!=null) |
|||
listener.onTransferReasonSelected(data.get(holder.getAdapterPosition())); |
|||
} |
|||
}); |
|||
TransferDetailModel province= data.get(position); |
|||
holder.setName(province.getText()); |
|||
} |
|||
|
|||
@Override |
|||
public int getItemCount() { |
|||
return data.size(); |
|||
} |
|||
|
|||
public void setData(List<TransferDetailModel> data) { |
|||
if(data!=null) |
|||
{ |
|||
this.data=data; |
|||
notifyDataSetChanged(); |
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -1,202 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.view; |
|||
|
|||
import android.app.Dialog; |
|||
import android.app.DialogFragment; |
|||
import android.content.Context; |
|||
import android.content.DialogInterface; |
|||
import android.os.Bundle; |
|||
import android.support.v7.app.AlertDialog; |
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.text.Editable; |
|||
import android.text.TextWatcher; |
|||
import android.util.Log; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
import android.view.Window; |
|||
import android.view.WindowManager; |
|||
import android.view.inputmethod.InputMethodManager; |
|||
import android.widget.EditText; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.customwidgets.LineDividerItemDecoration; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.adapter.RecipientCountryListingRvAdapter; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.CountryDetailModel; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientCountryListingDialog extends android.support.v4.app.DialogFragment implements View.OnClickListener, TextWatcher { |
|||
|
|||
private List<CountryDetailModel> data; |
|||
private CountrySelectionListener listener; |
|||
private RecyclerView countryListRv; |
|||
private View cancelButton; |
|||
private EditText noCountryFoundView; |
|||
private EditText searchEditTextView; |
|||
private RecipientCountryListingRvAdapter countryListingRvAdapter; |
|||
private View searchViewContainer; |
|||
|
|||
|
|||
@Override |
|||
public Dialog onCreateDialog(Bundle savedInstanceState) { |
|||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
|||
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_country_listing, null); |
|||
countryListRv = view.findViewById(R.id.countryListRv); |
|||
noCountryFoundView = view.findViewById(R.id.noCountryFoundTextView); |
|||
cancelButton = view.findViewById(R.id.iv_cancel); |
|||
searchEditTextView = view.findViewById(R.id.searchEditText); |
|||
searchViewContainer= view.findViewById(R.id.searchViewContainer); |
|||
|
|||
builder.setView(view); |
|||
|
|||
|
|||
initialize(); |
|||
return builder.create(); |
|||
|
|||
} |
|||
|
|||
private void initialize() { |
|||
searchEditTextView.setHint("Search Country"); |
|||
cancelButton.setOnClickListener(this); |
|||
searchEditTextView.addTextChangedListener(this); |
|||
countryListingRvAdapter = new RecipientCountryListingRvAdapter(this.listener); |
|||
countryListingRvAdapter.setData(this.data); |
|||
countryListRv.setAdapter(countryListingRvAdapter); |
|||
LineDividerItemDecoration lineDividerItemDecoration = new LineDividerItemDecoration(getActivity(), LineDividerItemDecoration.VERTICAL_LIST); |
|||
countryListRv.addItemDecoration(lineDividerItemDecoration); |
|||
|
|||
searchViewContainer.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
searchEditTextView.requestFocus(); |
|||
showKeyBoard(searchEditTextView); |
|||
} |
|||
}); |
|||
|
|||
} |
|||
|
|||
public void setListener(CountrySelectionListener listener) { |
|||
this.listener = listener; |
|||
} |
|||
|
|||
public void setCountryData(List<CountryDetailModel> data) { |
|||
if (data != null) { |
|||
this.data = data; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onStart() { |
|||
super.onStart(); |
|||
|
|||
Window window = getDialog().getWindow(); |
|||
if (window != null) { |
|||
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); |
|||
window.setBackgroundDrawableResource(R.drawable.ic_rounded_grey_bg_with_inset); |
|||
|
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onClick(View v) { |
|||
switch (v.getId()) { |
|||
case R.id.iv_cancel: |
|||
cancelButton.setOnClickListener(null); |
|||
hideKeyboard(); |
|||
dismiss(); |
|||
break; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onDismiss(DialogInterface dialog) { |
|||
super.onDismiss(dialog); |
|||
cancelButton.setOnClickListener(null); |
|||
searchEditTextView.removeTextChangedListener(this); |
|||
searchViewContainer.setOnClickListener(null); |
|||
|
|||
} |
|||
|
|||
private void showCountryNotFoundView(boolean action) { |
|||
if (action) { |
|||
if (countryListRv.getVisibility() == View.VISIBLE) { |
|||
countryListRv.setVisibility(View.GONE); |
|||
noCountryFoundView.setVisibility(View.VISIBLE); |
|||
} |
|||
} else { |
|||
if (countryListRv.getVisibility() != View.VISIBLE) { |
|||
noCountryFoundView.setVisibility(View.GONE); |
|||
countryListRv.setVisibility(View.VISIBLE); |
|||
} |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void afterTextChanged(Editable s) { |
|||
if (countryListingRvAdapter != null) { |
|||
searchForCountry(s.toString()); |
|||
} |
|||
} |
|||
|
|||
private void searchForCountry(String s) { |
|||
if (this.data != null) { |
|||
if (s.length() > 0) { |
|||
List<CountryDetailModel> searchedData = new ArrayList<>(); |
|||
for (CountryDetailModel item : data) { |
|||
if (item.getName().toLowerCase().contains(s.toLowerCase())) { |
|||
searchedData.add(item); |
|||
} |
|||
} |
|||
if (searchedData.size() > 0) |
|||
showCountryNotFoundView(false); |
|||
else |
|||
showCountryNotFoundView(true); |
|||
countryListingRvAdapter.setData(searchedData); |
|||
|
|||
} else { |
|||
showCountryNotFoundView(false); |
|||
countryListingRvAdapter.setData(this.data); |
|||
} |
|||
} |
|||
} |
|||
|
|||
public void hideKeyboard() { |
|||
// Check if no view has focus: |
|||
try { |
|||
View view = getActivity().getCurrentFocus(); |
|||
|
|||
InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
inputManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); |
|||
} |
|||
catch(Exception ex) |
|||
{ |
|||
|
|||
} |
|||
|
|||
} |
|||
|
|||
public void showKeyBoard(View view) { |
|||
try { |
|||
InputMethodManager imm = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT); |
|||
Log.d("GMEEXCEPTION", "Keyboard shown"); |
|||
} catch (NullPointerException e) { |
|||
Log.d("GMEEXCEPTION", "Null pointer while showing keyboard"); |
|||
} |
|||
} |
|||
|
|||
|
|||
public interface CountrySelectionListener { |
|||
void onCountrySelected(CountryDetailModel countryPaymentService); |
|||
} |
|||
} |
@ -1,206 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.view; |
|||
|
|||
import android.app.Dialog; |
|||
import android.app.DialogFragment; |
|||
import android.content.Context; |
|||
import android.content.DialogInterface; |
|||
import android.os.Bundle; |
|||
import android.support.v7.app.AlertDialog; |
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.text.Editable; |
|||
import android.text.TextWatcher; |
|||
import android.util.Log; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
import android.view.Window; |
|||
import android.view.inputmethod.InputMethodManager; |
|||
import android.widget.EditText; |
|||
import android.widget.TextView; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.customwidgets.LineDividerItemDecoration; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.adapter.RecipientDistrictListingRvAdapter; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.DistrictDetailModel; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientDistrictListingDialog extends android.support.v4.app.DialogFragment implements View.OnClickListener, TextWatcher { |
|||
|
|||
private List<DistrictDetailModel> data; |
|||
private DistrictSelectionListener listener; |
|||
private RecyclerView districtRv; |
|||
private View cancelButton; |
|||
private EditText noDistrictFoundView; |
|||
private EditText searchEditTextView; |
|||
private RecipientDistrictListingRvAdapter districtListingRvAdapter; |
|||
|
|||
private TextView dialogTitle; |
|||
private View searchViewContainer; |
|||
|
|||
@Override |
|||
public Dialog onCreateDialog(Bundle savedInstanceState) { |
|||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
|||
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_country_listing, null); |
|||
districtRv = view.findViewById(R.id.countryListRv); |
|||
noDistrictFoundView = view.findViewById(R.id.noCountryFoundTextView); |
|||
dialogTitle = view.findViewById(R.id.dialog_title_txt); |
|||
cancelButton = view.findViewById(R.id.iv_cancel); |
|||
searchEditTextView = view.findViewById(R.id.searchEditText); |
|||
searchViewContainer= view.findViewById(R.id.searchViewContainer); |
|||
|
|||
builder.setView(view); |
|||
initialize(); |
|||
|
|||
return builder.create(); |
|||
|
|||
} |
|||
|
|||
private void initialize() { |
|||
cancelButton.setOnClickListener(this); |
|||
searchEditTextView.addTextChangedListener(this); |
|||
districtListingRvAdapter = new RecipientDistrictListingRvAdapter(this.listener); |
|||
districtListingRvAdapter.setData(this.data); |
|||
districtRv.setAdapter(districtListingRvAdapter); |
|||
LineDividerItemDecoration lineDividerItemDecoration = new LineDividerItemDecoration(getActivity(), LineDividerItemDecoration.VERTICAL_LIST); |
|||
districtRv.addItemDecoration(lineDividerItemDecoration); |
|||
noDistrictFoundView.setHint("No district found."); |
|||
dialogTitle.setText("Select District"); |
|||
searchEditTextView.setHint("Search District"); |
|||
|
|||
|
|||
searchViewContainer.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
searchEditTextView.requestFocus(); |
|||
showKeyBoard(searchEditTextView); |
|||
} |
|||
}); |
|||
|
|||
} |
|||
|
|||
public void setListener(DistrictSelectionListener listener) { |
|||
this.listener = listener; |
|||
} |
|||
|
|||
public void setDistrictData(List<DistrictDetailModel> data) { |
|||
if (data != null&&data.size()>0) { |
|||
this.data = data; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onStart() { |
|||
super.onStart(); |
|||
Window window = getDialog().getWindow(); |
|||
if (window != null) { |
|||
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); |
|||
window.setBackgroundDrawableResource(R.drawable.ic_rounded_grey_bg_with_inset); |
|||
|
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onClick(View v) { |
|||
switch (v.getId()) { |
|||
case R.id.iv_cancel: |
|||
cancelButton.setOnClickListener(null); |
|||
hideKeyboard(); |
|||
dismiss(); |
|||
break; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onDismiss(DialogInterface dialog) { |
|||
super.onDismiss(dialog); |
|||
cancelButton.setOnClickListener(null); |
|||
searchEditTextView.removeTextChangedListener(this); |
|||
searchViewContainer.setOnClickListener(null); |
|||
|
|||
} |
|||
|
|||
private void showDistrictNotFoundView(boolean action) { |
|||
if (action) { |
|||
if(districtRv.getVisibility()==View.VISIBLE) { |
|||
districtRv.setVisibility(View.GONE); |
|||
noDistrictFoundView.setVisibility(View.VISIBLE); |
|||
} |
|||
} else { |
|||
if(districtRv.getVisibility()!=View.VISIBLE) { |
|||
noDistrictFoundView.setVisibility(View.GONE); |
|||
districtRv.setVisibility(View.VISIBLE); |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void afterTextChanged(Editable s) { |
|||
if (districtListingRvAdapter != null) { |
|||
searchForDistrict(s.toString()); |
|||
} |
|||
} |
|||
|
|||
private void searchForDistrict(String s) { |
|||
if (this.data != null) { |
|||
if (s.length() > 0) { |
|||
List<DistrictDetailModel> searchedData = new ArrayList<>(); |
|||
for (DistrictDetailModel item : data) { |
|||
if (item.getText().toLowerCase().contains(s.toLowerCase())) { |
|||
searchedData.add(item); |
|||
} |
|||
} |
|||
if (searchedData.size() > 0) |
|||
showDistrictNotFoundView(false); |
|||
else |
|||
showDistrictNotFoundView(true); |
|||
districtListingRvAdapter.setData(searchedData); |
|||
|
|||
} else { |
|||
districtListingRvAdapter.setData(this.data); |
|||
showDistrictNotFoundView(false); |
|||
} |
|||
} |
|||
} |
|||
|
|||
public void hideKeyboard() { |
|||
// Check if no view has focus: |
|||
try { |
|||
View view = getActivity().getCurrentFocus(); |
|||
|
|||
InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
inputManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); |
|||
} |
|||
catch(Exception ex) |
|||
{ |
|||
|
|||
} |
|||
|
|||
} |
|||
|
|||
public void showKeyBoard(View view) { |
|||
try { |
|||
InputMethodManager imm = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT); |
|||
Log.d("GMEEXCEPTION", "Keyboard shown"); |
|||
} catch (NullPointerException e) { |
|||
Log.d("GMEEXCEPTION", "Null pointer while showing keyboard"); |
|||
} |
|||
} |
|||
|
|||
|
|||
public interface DistrictSelectionListener { |
|||
void onDistrictSelected(DistrictDetailModel countryPaymentService); |
|||
} |
|||
} |
@ -1,204 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.view; |
|||
|
|||
import android.app.Dialog; |
|||
import android.app.DialogFragment; |
|||
import android.content.Context; |
|||
import android.content.DialogInterface; |
|||
import android.os.Bundle; |
|||
import android.support.v7.app.AlertDialog; |
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.text.Editable; |
|||
import android.text.TextWatcher; |
|||
import android.util.Log; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
import android.view.Window; |
|||
import android.view.inputmethod.InputMethodManager; |
|||
import android.widget.EditText; |
|||
import android.widget.TextView; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.customwidgets.LineDividerItemDecoration; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.adapter.RecipientProvinceListingRvAdapter; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.ProvinceDetailModel; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientProvinceListingDialog extends android.support.v4.app.DialogFragment implements View.OnClickListener, TextWatcher { |
|||
|
|||
private List<ProvinceDetailModel> data; |
|||
private ProvinceSelectionListener listener; |
|||
private RecyclerView provinceRv; |
|||
private View cancelButton; |
|||
private EditText noProvinceFoundView; |
|||
private EditText searchEditTextView; |
|||
private RecipientProvinceListingRvAdapter provinceListingRvAdapter; |
|||
private TextView dialogTitle; |
|||
private View searchViewContainer; |
|||
|
|||
@Override |
|||
public Dialog onCreateDialog(Bundle savedInstanceState) { |
|||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
|||
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_country_listing, null); |
|||
provinceRv = view.findViewById(R.id.countryListRv); |
|||
noProvinceFoundView = view.findViewById(R.id.noCountryFoundTextView); |
|||
cancelButton = view.findViewById(R.id.iv_cancel); |
|||
searchEditTextView = view.findViewById(R.id.searchEditText); |
|||
dialogTitle = view.findViewById(R.id.dialog_title_txt); |
|||
searchViewContainer= view.findViewById(R.id.searchViewContainer); |
|||
|
|||
builder.setView(view); |
|||
initialize(); |
|||
|
|||
return builder.create(); |
|||
|
|||
} |
|||
|
|||
private void initialize() { |
|||
cancelButton.setOnClickListener(this); |
|||
searchEditTextView.addTextChangedListener(this); |
|||
provinceListingRvAdapter = new RecipientProvinceListingRvAdapter(this.listener); |
|||
provinceListingRvAdapter.setData(this.data); |
|||
provinceRv.setAdapter(provinceListingRvAdapter); |
|||
LineDividerItemDecoration lineDividerItemDecoration = new LineDividerItemDecoration(getActivity(), LineDividerItemDecoration.VERTICAL_LIST); |
|||
provinceRv.addItemDecoration(lineDividerItemDecoration); |
|||
noProvinceFoundView.setHint("No province found."); |
|||
dialogTitle.setText("Select Province"); |
|||
searchEditTextView.setHint("Search Province"); |
|||
|
|||
|
|||
searchViewContainer.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
searchEditTextView.requestFocus(); |
|||
showKeyBoard(searchEditTextView); |
|||
} |
|||
}); |
|||
|
|||
} |
|||
|
|||
public void setListener(ProvinceSelectionListener listener) { |
|||
this.listener = listener; |
|||
} |
|||
|
|||
public void setProvinceData(List<ProvinceDetailModel> data) { |
|||
if (data != null&&data.size()>0) { |
|||
this.data = data; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onStart() { |
|||
super.onStart(); |
|||
Window window = getDialog().getWindow(); |
|||
if (window != null) { |
|||
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); |
|||
window.setBackgroundDrawableResource(R.drawable.ic_rounded_grey_bg_with_inset); |
|||
|
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onClick(View v) { |
|||
switch (v.getId()) { |
|||
case R.id.iv_cancel: |
|||
cancelButton.setOnClickListener(null); |
|||
hideKeyboard(); |
|||
dismiss(); |
|||
break; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onDismiss(DialogInterface dialog) { |
|||
super.onDismiss(dialog); |
|||
cancelButton.setOnClickListener(null); |
|||
searchEditTextView.removeTextChangedListener(this); |
|||
searchViewContainer.setOnClickListener(null); |
|||
|
|||
} |
|||
|
|||
private void showProvinceNotFoundView(boolean action) { |
|||
if (action) { |
|||
if(provinceRv.getVisibility()==View.VISIBLE) { |
|||
provinceRv.setVisibility(View.GONE); |
|||
noProvinceFoundView.setVisibility(View.VISIBLE); |
|||
} |
|||
} else { |
|||
if(provinceRv.getVisibility()!=View.VISIBLE) { |
|||
noProvinceFoundView.setVisibility(View.GONE); |
|||
provinceRv.setVisibility(View.VISIBLE); |
|||
} |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void afterTextChanged(Editable s) { |
|||
if (provinceListingRvAdapter != null) { |
|||
searchForProvince(s.toString()); |
|||
} |
|||
} |
|||
|
|||
private void searchForProvince(String s) { |
|||
if (this.data != null) { |
|||
if (s.length() > 0) { |
|||
List<ProvinceDetailModel> searchedData = new ArrayList<>(); |
|||
for (ProvinceDetailModel item : data) { |
|||
if (item.getText().toLowerCase().contains(s.toLowerCase())) { |
|||
searchedData.add(item); |
|||
} |
|||
} |
|||
if (searchedData.size() > 0) |
|||
showProvinceNotFoundView(false); |
|||
else |
|||
showProvinceNotFoundView(true); |
|||
provinceListingRvAdapter.setData(searchedData); |
|||
|
|||
} else { |
|||
provinceListingRvAdapter.setData(this.data); |
|||
showProvinceNotFoundView(false); |
|||
} |
|||
} |
|||
} |
|||
|
|||
public void hideKeyboard() { |
|||
// Check if no view has focus: |
|||
try { |
|||
View view = getActivity().getCurrentFocus(); |
|||
|
|||
InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
inputManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); |
|||
} |
|||
catch(Exception ex) |
|||
{ |
|||
|
|||
} |
|||
|
|||
} |
|||
|
|||
public void showKeyBoard(View view) { |
|||
try { |
|||
InputMethodManager imm = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT); |
|||
Log.d("GMEEXCEPTION", "Keyboard shown"); |
|||
} catch (NullPointerException e) { |
|||
Log.d("GMEEXCEPTION", "Null pointer while showing keyboard"); |
|||
} |
|||
} |
|||
|
|||
|
|||
public interface ProvinceSelectionListener { |
|||
void onProvinceSelected(ProvinceDetailModel countryPaymentService); |
|||
} |
|||
} |
@ -1,202 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.view; |
|||
|
|||
import android.app.Dialog; |
|||
import android.app.DialogFragment; |
|||
import android.content.Context; |
|||
import android.content.DialogInterface; |
|||
import android.os.Bundle; |
|||
import android.support.v7.app.AlertDialog; |
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.text.Editable; |
|||
import android.text.TextWatcher; |
|||
import android.util.Log; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
import android.view.Window; |
|||
import android.view.WindowManager; |
|||
import android.view.inputmethod.InputMethodManager; |
|||
import android.widget.EditText; |
|||
import android.widget.TextView; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.customwidgets.LineDividerItemDecoration; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.adapter.RecipientRelationListingRvAdapter; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.RelationDetailModel; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientRelationListingDialog extends android.support.v4.app.DialogFragment implements View.OnClickListener, TextWatcher { |
|||
|
|||
private List<RelationDetailModel> data; |
|||
private RelationSelectionListener listener; |
|||
private RecyclerView relationRv; |
|||
private View cancelButton; |
|||
private EditText noRelationFoundView; |
|||
private EditText searchEditTextView; |
|||
private RecipientRelationListingRvAdapter relationListingRvAdapter; |
|||
private TextView dialogTitle; |
|||
private View searchViewContainer; |
|||
|
|||
@Override |
|||
public Dialog onCreateDialog(Bundle savedInstanceState) { |
|||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
|||
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_country_listing, null); |
|||
relationRv = view.findViewById(R.id.countryListRv); |
|||
noRelationFoundView = view.findViewById(R.id.noCountryFoundTextView); |
|||
cancelButton = view.findViewById(R.id.iv_cancel); |
|||
searchEditTextView = view.findViewById(R.id.searchEditText); |
|||
searchViewContainer= view.findViewById(R.id.searchViewContainer); |
|||
|
|||
dialogTitle = view.findViewById(R.id.dialog_title_txt); |
|||
builder.setView(view); |
|||
initialize(); |
|||
|
|||
return builder.create(); |
|||
|
|||
} |
|||
|
|||
private void initialize() { |
|||
cancelButton.setOnClickListener(this); |
|||
searchEditTextView.addTextChangedListener(this); |
|||
relationListingRvAdapter = new RecipientRelationListingRvAdapter(this.listener); |
|||
relationListingRvAdapter.setData(this.data); |
|||
relationRv.setAdapter(relationListingRvAdapter); |
|||
LineDividerItemDecoration lineDividerItemDecoration = new LineDividerItemDecoration(getActivity(), LineDividerItemDecoration.VERTICAL_LIST); |
|||
relationRv.addItemDecoration(lineDividerItemDecoration); |
|||
noRelationFoundView.setHint("No relation found."); |
|||
dialogTitle.setText("Select Relation"); |
|||
searchEditTextView.setHint("Search Relation"); |
|||
|
|||
searchViewContainer.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
searchEditTextView.requestFocus(); |
|||
showKeyBoard(searchEditTextView); |
|||
} |
|||
}); |
|||
|
|||
} |
|||
|
|||
public void setListener(RelationSelectionListener listener) { |
|||
this.listener = listener; |
|||
} |
|||
|
|||
public void setTransferReasonData(List<RelationDetailModel> data) { |
|||
if (data != null && data.size() > 0) { |
|||
this.data = data; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onStart() { |
|||
super.onStart(); |
|||
Window window = getDialog().getWindow(); |
|||
if (window != null) { |
|||
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); |
|||
window.setBackgroundDrawableResource(R.drawable.ic_rounded_grey_bg_with_inset); |
|||
|
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onClick(View v) { |
|||
switch (v.getId()) { |
|||
case R.id.iv_cancel: |
|||
cancelButton.setOnClickListener(null); |
|||
hideKeyboard(); |
|||
dismiss(); |
|||
break; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onDismiss(DialogInterface dialog) { |
|||
super.onDismiss(dialog); |
|||
cancelButton.setOnClickListener(null); |
|||
searchEditTextView.removeTextChangedListener(this); |
|||
searchViewContainer.setOnClickListener(null); |
|||
|
|||
} |
|||
|
|||
private void showRelationNotFoundView(boolean action) { |
|||
if (action) { |
|||
if (relationRv.getVisibility() == View.VISIBLE) { |
|||
relationRv.setVisibility(View.GONE); |
|||
noRelationFoundView.setVisibility(View.VISIBLE); |
|||
} |
|||
} else { |
|||
if (relationRv.getVisibility() != View.VISIBLE) { |
|||
noRelationFoundView.setVisibility(View.GONE); |
|||
relationRv.setVisibility(View.VISIBLE); |
|||
} |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void afterTextChanged(Editable s) { |
|||
if (relationListingRvAdapter != null) { |
|||
searchForRelation(s.toString()); |
|||
} |
|||
} |
|||
|
|||
private void searchForRelation(String s) { |
|||
if (this.data != null) { |
|||
if (s.length() > 0) { |
|||
List<RelationDetailModel> searchedData = new ArrayList<>(); |
|||
for (RelationDetailModel item : data) { |
|||
if (item.getText().toLowerCase().contains(s.toLowerCase())) { |
|||
searchedData.add(item); |
|||
} |
|||
} |
|||
if (searchedData.size() > 0) |
|||
showRelationNotFoundView(false); |
|||
else |
|||
showRelationNotFoundView(true); |
|||
relationListingRvAdapter.setData(searchedData); |
|||
|
|||
} else { |
|||
showRelationNotFoundView(false); |
|||
relationListingRvAdapter.setData(this.data); |
|||
} |
|||
} |
|||
} |
|||
|
|||
public void hideKeyboard() { |
|||
// Check if no view has focus: |
|||
try { |
|||
View view = getActivity().getCurrentFocus(); |
|||
|
|||
InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
inputManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); |
|||
} catch (Exception ex) { |
|||
|
|||
} |
|||
|
|||
} |
|||
|
|||
public void showKeyBoard(View view) { |
|||
try { |
|||
InputMethodManager imm = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT); |
|||
Log.d("GMEEXCEPTION", "Keyboard shown"); |
|||
} catch (NullPointerException e) { |
|||
Log.d("GMEEXCEPTION", "Null pointer while showing keyboard"); |
|||
} |
|||
} |
|||
|
|||
|
|||
public interface RelationSelectionListener { |
|||
void onRelationSelected(RelationDetailModel relationDetailModel); |
|||
} |
|||
} |
@ -1,204 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV2.view; |
|||
|
|||
import android.app.Dialog; |
|||
import android.app.DialogFragment; |
|||
import android.content.Context; |
|||
import android.content.DialogInterface; |
|||
import android.os.Bundle; |
|||
import android.support.v7.app.AlertDialog; |
|||
import android.support.v7.widget.RecyclerView; |
|||
import android.text.Editable; |
|||
import android.text.TextWatcher; |
|||
import android.util.Log; |
|||
import android.view.View; |
|||
import android.view.ViewGroup; |
|||
import android.view.Window; |
|||
import android.view.inputmethod.InputMethodManager; |
|||
import android.widget.EditText; |
|||
import android.widget.TextView; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.R; |
|||
import com.gmeremit.online.gmeremittance_native.customwidgets.LineDividerItemDecoration; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.adapter.RecipientTransferListingRvAdapter; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.TransferDetailModel; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
public class RecipientTransferListingDialog extends android.support.v4.app.DialogFragment implements View.OnClickListener, TextWatcher { |
|||
|
|||
private List<TransferDetailModel> data; |
|||
private TransferReasonSelectionListener listener; |
|||
private RecyclerView transferRv; |
|||
private View cancelButton; |
|||
private EditText noTransferFoundView; |
|||
private EditText searchEditTextView; |
|||
private RecipientTransferListingRvAdapter transferListingRvAdapter; |
|||
|
|||
private TextView dialogTitle; |
|||
private View searchViewContainer; |
|||
|
|||
@Override |
|||
public Dialog onCreateDialog(Bundle savedInstanceState) { |
|||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
|||
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_country_listing, null); |
|||
transferRv = view.findViewById(R.id.countryListRv); |
|||
noTransferFoundView = view.findViewById(R.id.noCountryFoundTextView); |
|||
cancelButton = view.findViewById(R.id.iv_cancel); |
|||
searchEditTextView = view.findViewById(R.id.searchEditText); |
|||
dialogTitle = view.findViewById(R.id.dialog_title_txt); |
|||
searchViewContainer= view.findViewById(R.id.searchViewContainer); |
|||
|
|||
builder.setView(view); |
|||
initialize(); |
|||
|
|||
return builder.create(); |
|||
} |
|||
|
|||
private void initialize() { |
|||
cancelButton.setOnClickListener(this); |
|||
searchEditTextView.addTextChangedListener(this); |
|||
transferListingRvAdapter = new RecipientTransferListingRvAdapter(this.listener); |
|||
transferListingRvAdapter.setData(this.data); |
|||
transferRv.setAdapter(transferListingRvAdapter); |
|||
LineDividerItemDecoration lineDividerItemDecoration = new LineDividerItemDecoration(getActivity(), LineDividerItemDecoration.VERTICAL_LIST); |
|||
transferRv.addItemDecoration(lineDividerItemDecoration); |
|||
noTransferFoundView.setHint("No transfer reason found."); |
|||
dialogTitle.setText("Select Transfer Reason"); |
|||
searchEditTextView.setHint("Search Transfer Reason"); |
|||
|
|||
|
|||
searchViewContainer.setOnClickListener(new View.OnClickListener() { |
|||
@Override |
|||
public void onClick(View v) { |
|||
searchEditTextView.requestFocus(); |
|||
showKeyBoard(searchEditTextView); |
|||
} |
|||
}); |
|||
|
|||
} |
|||
|
|||
public void setListener(TransferReasonSelectionListener listener) { |
|||
this.listener = listener; |
|||
} |
|||
|
|||
public void setTransferReasonData(List<TransferDetailModel> data) { |
|||
if (data != null&&data.size()>0) { |
|||
this.data = data; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onStart() { |
|||
super.onStart(); |
|||
Window window = getDialog().getWindow(); |
|||
if (window != null) { |
|||
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); |
|||
window.setBackgroundDrawableResource(R.drawable.ic_rounded_grey_bg_with_inset); |
|||
|
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onClick(View v) { |
|||
switch (v.getId()) { |
|||
case R.id.iv_cancel: |
|||
cancelButton.setOnClickListener(null); |
|||
hideKeyboard(); |
|||
dismiss(); |
|||
break; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void onDismiss(DialogInterface dialog) { |
|||
super.onDismiss(dialog); |
|||
cancelButton.setOnClickListener(null); |
|||
searchEditTextView.removeTextChangedListener(this); |
|||
searchViewContainer.setOnClickListener(null); |
|||
|
|||
} |
|||
|
|||
private void showRecipientNotFoundView(boolean action) { |
|||
if (action) { |
|||
if(transferRv.getVisibility()==View.VISIBLE) { |
|||
transferRv.setVisibility(View.GONE); |
|||
noTransferFoundView.setVisibility(View.VISIBLE); |
|||
} |
|||
} else { |
|||
if(transferRv.getVisibility()!=View.VISIBLE) { |
|||
noTransferFoundView.setVisibility(View.GONE); |
|||
transferRv.setVisibility(View.VISIBLE); |
|||
} |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void afterTextChanged(Editable s) { |
|||
if (transferListingRvAdapter != null) { |
|||
searchForCountry(s.toString()); |
|||
} |
|||
} |
|||
|
|||
private void searchForCountry(String s) { |
|||
if (this.data != null) { |
|||
if (s.length() > 0) { |
|||
List<TransferDetailModel> searchedData = new ArrayList<>(); |
|||
for (TransferDetailModel item : data) { |
|||
if (item.getText().toLowerCase().contains(s.toLowerCase())) { |
|||
searchedData.add(item); |
|||
} |
|||
} |
|||
if (searchedData.size() > 0) |
|||
showRecipientNotFoundView(false); |
|||
else |
|||
showRecipientNotFoundView(true); |
|||
transferListingRvAdapter.setData(searchedData); |
|||
|
|||
} else { |
|||
showRecipientNotFoundView(false); |
|||
transferListingRvAdapter.setData(this.data); |
|||
} |
|||
} |
|||
} |
|||
|
|||
public void hideKeyboard() { |
|||
// Check if no view has focus: |
|||
try { |
|||
View view = getActivity().getCurrentFocus(); |
|||
|
|||
InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
inputManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); |
|||
} |
|||
catch(Exception ex) |
|||
{ |
|||
|
|||
} |
|||
|
|||
} |
|||
|
|||
public void showKeyBoard(View view) { |
|||
try { |
|||
InputMethodManager imm = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
|||
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT); |
|||
Log.d("GMEEXCEPTION", "Keyboard shown"); |
|||
} catch (NullPointerException e) { |
|||
Log.d("GMEEXCEPTION", "Null pointer while showing keyboard"); |
|||
} |
|||
} |
|||
|
|||
|
|||
public interface TransferReasonSelectionListener { |
|||
void onTransferReasonSelected(TransferDetailModel countryPaymentService); |
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue