Change loaders
This commit is contained in:
parent
ec68ae14ef
commit
ad83c5ed88
@ -74,4 +74,6 @@ dependencies {
|
|||||||
implementation 'org.apache.commons:commons-collections4:4.0'
|
implementation 'org.apache.commons:commons-collections4:4.0'
|
||||||
implementation 'com.android.support:appcompat-v7:27.1.1'
|
implementation 'com.android.support:appcompat-v7:27.1.1'
|
||||||
implementation 'com.android.support:design:27.1.1'
|
implementation 'com.android.support:design:27.1.1'
|
||||||
|
// spinner loaders library
|
||||||
|
implementation 'com.github.ybq:Android-SpinKit:1.2.0'
|
||||||
}
|
}
|
||||||
|
@ -31,6 +31,7 @@ import android.widget.TextView;
|
|||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import android.widget.ToggleButton;
|
import android.widget.ToggleButton;
|
||||||
|
|
||||||
|
import com.github.ybq.android.spinkit.SpinKitView;
|
||||||
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
||||||
import com.mapbox.geojson.Point;
|
import com.mapbox.geojson.Point;
|
||||||
import com.mapbox.mapboxsdk.geometry.LatLng;
|
import com.mapbox.mapboxsdk.geometry.LatLng;
|
||||||
@ -86,6 +87,9 @@ public class BlackList extends AppCompatActivity {
|
|||||||
Switch aSwitch;
|
Switch aSwitch;
|
||||||
@BindView(R.id.add_to_black_list_fab)
|
@BindView(R.id.add_to_black_list_fab)
|
||||||
FloatingActionButton addToBlackListFab;
|
FloatingActionButton addToBlackListFab;
|
||||||
|
@BindView(R.id.loader)
|
||||||
|
SpinKitView loader;
|
||||||
|
|
||||||
|
|
||||||
private Integer prevSize;
|
private Integer prevSize;
|
||||||
private BlackListAdapter mAdapter;
|
private BlackListAdapter mAdapter;
|
||||||
@ -122,6 +126,7 @@ public class BlackList extends AppCompatActivity {
|
|||||||
recyclerView.setItemAnimator(new DefaultItemAnimator());
|
recyclerView.setItemAnimator(new DefaultItemAnimator());
|
||||||
recyclerView.addItemDecoration(new MyDividerItemDecoration(this, LinearLayoutManager.VERTICAL, 16));
|
recyclerView.addItemDecoration(new MyDividerItemDecoration(this, LinearLayoutManager.VERTICAL, 16));
|
||||||
recyclerView.setAdapter(mAdapter);
|
recyclerView.setAdapter(mAdapter);
|
||||||
|
noNotesView.setVisibility(View.GONE);
|
||||||
|
|
||||||
fetchBlackListedUsers();
|
fetchBlackListedUsers();
|
||||||
/**
|
/**
|
||||||
@ -275,15 +280,15 @@ public class BlackList extends AppCompatActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void toggleEmptyNotes() {
|
private void toggleEmptyNotes() {
|
||||||
|
|
||||||
if (didFetched && blacklistedUsers.size() == 0) {
|
if (didFetched && blacklistedUsers.size() == 0) {
|
||||||
noNotesView.setText(R.string.list_is_empty);
|
|
||||||
noNotesView.setVisibility(View.VISIBLE);
|
noNotesView.setVisibility(View.VISIBLE);
|
||||||
|
noNotesView.setText(R.string.list_is_empty);
|
||||||
|
loader.setVisibility(View.GONE);
|
||||||
}else if (blacklistedUsers.size() > 0) {
|
}else if (blacklistedUsers.size() > 0) {
|
||||||
noNotesView.setVisibility(View.GONE);
|
noNotesView.setVisibility(View.GONE);
|
||||||
|
loader.setVisibility(View.GONE);
|
||||||
} else {
|
} else {
|
||||||
noNotesView.setText(getString(R.string.loading));
|
loader.setVisibility(View.VISIBLE);
|
||||||
noNotesView.setVisibility(View.VISIBLE);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ import android.app.Fragment;
|
|||||||
import android.app.FragmentTransaction;
|
import android.app.FragmentTransaction;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.os.SystemClock;
|
||||||
import android.support.annotation.NonNull;
|
import android.support.annotation.NonNull;
|
||||||
import android.support.design.widget.CoordinatorLayout;
|
import android.support.design.widget.CoordinatorLayout;
|
||||||
import android.support.design.widget.Snackbar;
|
import android.support.design.widget.Snackbar;
|
||||||
@ -30,6 +31,7 @@ import android.widget.ListView;
|
|||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.annimon.stream.Stream;
|
import com.annimon.stream.Stream;
|
||||||
|
import com.github.ybq.android.spinkit.SpinKitView;
|
||||||
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
||||||
import com.uam.wmi.findmytutor.R;
|
import com.uam.wmi.findmytutor.R;
|
||||||
import com.uam.wmi.findmytutor.adapters.TutorsListAdapter;
|
import com.uam.wmi.findmytutor.adapters.TutorsListAdapter;
|
||||||
@ -57,8 +59,12 @@ import java.util.Locale;
|
|||||||
|
|
||||||
import butterknife.BindView;
|
import butterknife.BindView;
|
||||||
import butterknife.ButterKnife;
|
import butterknife.ButterKnife;
|
||||||
|
import io.reactivex.Observable;
|
||||||
|
import io.reactivex.ObservableSource;
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||||
import io.reactivex.disposables.CompositeDisposable;
|
import io.reactivex.disposables.CompositeDisposable;
|
||||||
|
import io.reactivex.functions.Function;
|
||||||
|
import io.reactivex.observers.DisposableObserver;
|
||||||
import io.reactivex.observers.DisposableSingleObserver;
|
import io.reactivex.observers.DisposableSingleObserver;
|
||||||
import io.reactivex.schedulers.Schedulers;
|
import io.reactivex.schedulers.Schedulers;
|
||||||
import okhttp3.ResponseBody;
|
import okhttp3.ResponseBody;
|
||||||
@ -74,6 +80,8 @@ public class UsersListFragment extends Fragment {
|
|||||||
RecyclerView recyclerView;
|
RecyclerView recyclerView;
|
||||||
@BindView(R.id.txt_empty_notes_view)
|
@BindView(R.id.txt_empty_notes_view)
|
||||||
TextView noNotesView;
|
TextView noNotesView;
|
||||||
|
@BindView(R.id.loader)
|
||||||
|
SpinKitView loader;
|
||||||
|
|
||||||
private SearchView searchView;
|
private SearchView searchView;
|
||||||
private UserService userService;
|
private UserService userService;
|
||||||
@ -95,7 +103,6 @@ public class UsersListFragment extends Fragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||||
|
|
||||||
mAdapter = new TutorsListAdapter(getActivity().getApplicationContext(), tutorsList, tutorsTimeStamps);
|
mAdapter = new TutorsListAdapter(getActivity().getApplicationContext(), tutorsList, tutorsTimeStamps);
|
||||||
View view = inflater.inflate(R.layout.users_list, container, false);
|
View view = inflater.inflate(R.layout.users_list, container, false);
|
||||||
view.setBackgroundColor(getResources().getColor(android.R.color.white));
|
view.setBackgroundColor(getResources().getColor(android.R.color.white));
|
||||||
@ -119,6 +126,7 @@ public class UsersListFragment extends Fragment {
|
|||||||
recyclerView.setVerticalScrollBarEnabled(true);
|
recyclerView.setVerticalScrollBarEnabled(true);
|
||||||
recyclerView.addItemDecoration(new MyDividerItemDecoration(getActivity(), LinearLayoutManager.VERTICAL, 16));
|
recyclerView.addItemDecoration(new MyDividerItemDecoration(getActivity(), LinearLayoutManager.VERTICAL, 16));
|
||||||
recyclerView.setAdapter(mAdapter);
|
recyclerView.setAdapter(mAdapter);
|
||||||
|
noNotesView.setVisibility(View.GONE);
|
||||||
|
|
||||||
fetchAllTutors();
|
fetchAllTutors();
|
||||||
fetchTopCords();
|
fetchTopCords();
|
||||||
@ -404,9 +412,10 @@ public class UsersListFragment extends Fragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void toggleEmptyNotes() {
|
private void toggleEmptyNotes() {
|
||||||
if (tutorsList.size() > 0) {
|
loader.setVisibility(View.GONE);
|
||||||
noNotesView.setVisibility(View.GONE);
|
noNotesView.setVisibility(View.GONE);
|
||||||
} else {
|
|
||||||
|
if (tutorsList.size() == 0) {
|
||||||
noNotesView.setVisibility(View.VISIBLE);
|
noNotesView.setVisibility(View.VISIBLE);
|
||||||
if (fetchOnlyOnlineUsers)
|
if (fetchOnlyOnlineUsers)
|
||||||
noNotesView.setText(R.string.no_online_users);
|
noNotesView.setText(R.string.no_online_users);
|
||||||
@ -442,28 +451,44 @@ public class UsersListFragment extends Fragment {
|
|||||||
super.onSaveInstanceState(outState);
|
super.onSaveInstanceState(outState);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Observable<List<User>> getListOfActiveUsers() {
|
||||||
|
return userService.getAllActiveTutors()
|
||||||
|
.toObservable()
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread());
|
||||||
|
}
|
||||||
|
|
||||||
|
private Observable<Coordinate> getCoordinateObservable(User user) {
|
||||||
|
return coordinateService
|
||||||
|
.getTopCoordinatesByUserId(user.getId())
|
||||||
|
.toObservable()
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread());
|
||||||
|
}
|
||||||
|
|
||||||
private void fetchTopCords(){
|
private void fetchTopCords(){
|
||||||
disposable.add(
|
tutorsTimeStamps.clear();
|
||||||
coordinateService.getTopCoordinates()
|
disposable.add(getListOfActiveUsers()
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribeWith(new DisposableSingleObserver<List<Coordinate>>() {
|
.flatMap((Function<List<User>, Observable<User>>) Observable::fromIterable)
|
||||||
@Override
|
.flatMap((Function<User, ObservableSource<Coordinate>>) this::getCoordinateObservable)
|
||||||
public void onSuccess(List<Coordinate> newCords) {
|
.subscribeWith(new DisposableObserver<Coordinate>() {
|
||||||
for (Coordinate crd :
|
@Override
|
||||||
newCords) {
|
public void onNext(Coordinate coordinate) {
|
||||||
Long ts = crd.getTimeStamp();
|
Long ts = coordinate.getTimeStamp();
|
||||||
if (ts != 0){
|
tutorsTimeStamps.put(coordinate.getUserId(), getDate(ts));
|
||||||
tutorsTimeStamps.put(crd.getUserId(), getDate(ts));
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
mAdapter.notifyDataSetChanged();
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void onError(Throwable e) {showError(e);}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onError(Throwable e) {showSearchError(e);}
|
public void onComplete() {
|
||||||
}));
|
Log.e("USERS", String.valueOf(tutorsTimeStamps));
|
||||||
|
mAdapter.notifyDataSetChanged();
|
||||||
|
}
|
||||||
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getDate(long time) {
|
private String getDate(long time) {
|
||||||
@ -472,4 +497,4 @@ public class UsersListFragment extends Fragment {
|
|||||||
String date = DateFormat.format("HH:mm dd/MM", cal).toString();
|
String date = DateFormat.format("HH:mm dd/MM", cal).toString();
|
||||||
return date;
|
return date;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -27,6 +27,7 @@ import android.widget.Switch;
|
|||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import com.github.ybq.android.spinkit.SpinKitView;
|
||||||
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
||||||
import com.uam.wmi.findmytutor.R;
|
import com.uam.wmi.findmytutor.R;
|
||||||
import com.uam.wmi.findmytutor.adapters.WhiteListAdapter;
|
import com.uam.wmi.findmytutor.adapters.WhiteListAdapter;
|
||||||
@ -68,6 +69,9 @@ public class WhiteList extends AppCompatActivity {
|
|||||||
Switch aSwitch;
|
Switch aSwitch;
|
||||||
@BindView(R.id.add_to_white_list_fab)
|
@BindView(R.id.add_to_white_list_fab)
|
||||||
FloatingActionButton addToWhiteListFab;
|
FloatingActionButton addToWhiteListFab;
|
||||||
|
@BindView(R.id.loader)
|
||||||
|
SpinKitView loader;
|
||||||
|
|
||||||
private CompositeDisposable disposable = new CompositeDisposable();
|
private CompositeDisposable disposable = new CompositeDisposable();
|
||||||
private UserService userService;
|
private UserService userService;
|
||||||
private boolean didFetched = false;
|
private boolean didFetched = false;
|
||||||
@ -106,6 +110,7 @@ public class WhiteList extends AppCompatActivity {
|
|||||||
recyclerView.setItemAnimator(new DefaultItemAnimator());
|
recyclerView.setItemAnimator(new DefaultItemAnimator());
|
||||||
recyclerView.addItemDecoration(new MyDividerItemDecoration(this, LinearLayoutManager.VERTICAL, 16));
|
recyclerView.addItemDecoration(new MyDividerItemDecoration(this, LinearLayoutManager.VERTICAL, 16));
|
||||||
recyclerView.setAdapter(mAdapter);
|
recyclerView.setAdapter(mAdapter);
|
||||||
|
noNotesView.setVisibility(View.GONE);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* On long press on RecyclerView item, open alert dialog
|
* On long press on RecyclerView item, open alert dialog
|
||||||
@ -258,17 +263,20 @@ public class WhiteList extends AppCompatActivity {
|
|||||||
private void toggleEmptyNotes() {
|
private void toggleEmptyNotes() {
|
||||||
|
|
||||||
if (didFetched && whitelistedUsers.size() == 0) {
|
if (didFetched && whitelistedUsers.size() == 0) {
|
||||||
noNotesView.setText(R.string.list_is_empty);
|
|
||||||
noNotesView.setVisibility(View.VISIBLE);
|
noNotesView.setVisibility(View.VISIBLE);
|
||||||
|
noNotesView.setText(R.string.list_is_empty);
|
||||||
|
loader.setVisibility(View.GONE);
|
||||||
} else if (whitelistedUsers.size() > 0) {
|
} else if (whitelistedUsers.size() > 0) {
|
||||||
noNotesView.setVisibility(View.GONE);
|
noNotesView.setVisibility(View.GONE);
|
||||||
|
loader.setVisibility(View.GONE);
|
||||||
} else {
|
} else {
|
||||||
noNotesView.setText(getString(R.string.loading));
|
loader.setVisibility(View.VISIBLE);
|
||||||
noNotesView.setVisibility(View.VISIBLE);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onOptionsItemSelected(MenuItem item) {
|
public boolean onOptionsItemSelected(MenuItem item) {
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ import android.view.View;
|
|||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import com.github.ybq.android.spinkit.SpinKitView;
|
||||||
import com.uam.wmi.findmytutor.R;
|
import com.uam.wmi.findmytutor.R;
|
||||||
import com.uam.wmi.findmytutor.model.User;
|
import com.uam.wmi.findmytutor.model.User;
|
||||||
|
|
||||||
@ -49,17 +50,22 @@ public class TutorsListAdapter extends RecyclerView.Adapter<TutorsListAdapter.My
|
|||||||
if (tutor.isIsOnline()) {
|
if (tutor.isIsOnline()) {
|
||||||
image = context.getResources().getDrawable(R.drawable.user_list_online);
|
image = context.getResources().getDrawable(R.drawable.user_list_online);
|
||||||
holder.lastSeen.setText(R.string.available_now);
|
holder.lastSeen.setText(R.string.available_now);
|
||||||
|
holder.loader.setVisibility(View.GONE);
|
||||||
} else {
|
} else {
|
||||||
image = context.getResources().getDrawable(R.drawable.user_list_offline);
|
image = context.getResources().getDrawable(R.drawable.user_list_offline);
|
||||||
String ts = tutorsTimeStamps.get(tutor.getId());
|
String ts = tutorsTimeStamps.get(tutor.getId());
|
||||||
|
|
||||||
if (ts != null){
|
if (ts != null){
|
||||||
holder.lastSeen.setText(String.format("%s: %s", context.getString(R.string.last_seen), ts));
|
holder.lastSeen.setText(R.string.last_sign);
|
||||||
|
holder.lastSeen.append(String.format(": %s", ts));
|
||||||
|
holder.loader.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!tutor.isIsActive()) {
|
if (!tutor.isIsActive()) {
|
||||||
image = context.getResources().getDrawable(R.drawable.user_list_off);
|
image = context.getResources().getDrawable(R.drawable.user_list_off);
|
||||||
|
holder.lastSeen.setText("");
|
||||||
|
holder.loader.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
image.setBounds(0, 0, image.getIntrinsicWidth(), image.getIntrinsicHeight());
|
image.setBounds(0, 0, image.getIntrinsicWidth(), image.getIntrinsicHeight());
|
||||||
@ -82,6 +88,9 @@ public class TutorsListAdapter extends RecyclerView.Adapter<TutorsListAdapter.My
|
|||||||
@BindView(R.id.isOnline)
|
@BindView(R.id.isOnline)
|
||||||
TextView isOnline;
|
TextView isOnline;
|
||||||
|
|
||||||
|
@BindView(R.id.loader)
|
||||||
|
SpinKitView loader;
|
||||||
|
|
||||||
MyViewHolder(View view) {
|
MyViewHolder(View view) {
|
||||||
super(view);
|
super(view);
|
||||||
ButterKnife.bind(this, view);
|
ButterKnife.bind(this, view);
|
||||||
|
@ -28,6 +28,21 @@
|
|||||||
android:textColor="@color/msg_no_notes"
|
android:textColor="@color/msg_no_notes"
|
||||||
android:textSize="@dimen/msg_no_notes" />
|
android:textSize="@dimen/msg_no_notes" />
|
||||||
|
|
||||||
|
<com.github.ybq.android.spinkit.SpinKitView
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
android:id="@+id/loader"
|
||||||
|
style="@style/SpinKitView.Large.Wave"
|
||||||
|
android:layout_width="150dp"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
app:SpinKit_Color="@color/msg_no_notes"
|
||||||
|
android:layout_centerHorizontal="true"
|
||||||
|
android:layout_marginTop="@dimen/margin_top_no_notes"
|
||||||
|
android:fontFamily="sans-serif-light"
|
||||||
|
android:text="@string/loading"
|
||||||
|
android:textColor="@color/msg_no_notes"
|
||||||
|
android:textSize="@dimen/msg_no_notes" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
@ -28,6 +28,20 @@
|
|||||||
android:textColor="@color/msg_no_notes"
|
android:textColor="@color/msg_no_notes"
|
||||||
android:textSize="@dimen/msg_no_notes" />
|
android:textSize="@dimen/msg_no_notes" />
|
||||||
|
|
||||||
|
<com.github.ybq.android.spinkit.SpinKitView
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
android:id="@+id/loader"
|
||||||
|
style="@style/SpinKitView.Large.Wave"
|
||||||
|
android:layout_width="150dp"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
app:SpinKit_Color="@color/msg_no_notes"
|
||||||
|
android:layout_centerHorizontal="true"
|
||||||
|
android:layout_marginTop="@dimen/margin_top_no_notes"
|
||||||
|
android:fontFamily="sans-serif-light"
|
||||||
|
android:text="@string/loading"
|
||||||
|
android:textColor="@color/msg_no_notes"
|
||||||
|
android:textSize="@dimen/msg_no_notes" />
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
@ -19,9 +19,20 @@
|
|||||||
android:layout_alignParentTop="true"
|
android:layout_alignParentTop="true"
|
||||||
android:layout_marginStart="12dp"
|
android:layout_marginStart="12dp"
|
||||||
android:layout_marginTop="10dp"
|
android:layout_marginTop="10dp"
|
||||||
|
|
||||||
android:textColor="@color/note_list_text"
|
android:textColor="@color/note_list_text"
|
||||||
android:textSize="15sp" />
|
android:textSize="15sp" />
|
||||||
|
|
||||||
|
|
||||||
|
<com.github.ybq.android.spinkit.SpinKitView xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
android:id="@+id/loader"
|
||||||
|
style="@style/SpinKitView.Large.Wave"
|
||||||
|
android:layout_marginStart="12dp"
|
||||||
|
android:layout_marginTop="35dp"
|
||||||
|
android:layout_width="30dp"
|
||||||
|
android:layout_height="30dp"
|
||||||
|
app:SpinKit_Color="@color/colorAccent" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/lastSeen"
|
android:id="@+id/lastSeen"
|
||||||
android:layout_width="270dp"
|
android:layout_width="270dp"
|
||||||
@ -35,7 +46,6 @@
|
|||||||
android:textColor="#979797"
|
android:textColor="#979797"
|
||||||
android:textSize="13sp" />
|
android:textSize="13sp" />
|
||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/isOnline"
|
android:id="@+id/isOnline"
|
||||||
android:layout_width="50dp"
|
android:layout_width="50dp"
|
||||||
|
@ -27,5 +27,20 @@
|
|||||||
android:textSize="@dimen/msg_no_notes" />
|
android:textSize="@dimen/msg_no_notes" />
|
||||||
|
|
||||||
|
|
||||||
|
<com.github.ybq.android.spinkit.SpinKitView
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
android:id="@+id/loader"
|
||||||
|
style="@style/SpinKitView.Large.Wave"
|
||||||
|
android:layout_width="150dp"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
app:SpinKit_Color="@color/msg_no_notes"
|
||||||
|
android:layout_centerHorizontal="true"
|
||||||
|
android:layout_marginTop="@dimen/margin_top_no_notes"
|
||||||
|
android:fontFamily="sans-serif-light"
|
||||||
|
android:text="@string/loading"
|
||||||
|
android:textColor="@color/msg_no_notes"
|
||||||
|
android:textSize="@dimen/msg_no_notes" />
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
@ -284,7 +284,8 @@
|
|||||||
<string name="exact_mode">dokładny</string>
|
<string name="exact_mode">dokładny</string>
|
||||||
<string name="approx_mode">przybliżony</string>
|
<string name="approx_mode">przybliżony</string>
|
||||||
<string name="other_location">Niezapisana lokalizacja.</string>
|
<string name="other_location">Niezapisana lokalizacja.</string>
|
||||||
<string name="last_seen">Ostatnio</string>
|
<string name="last_sign">Ostatnio</string>
|
||||||
|
|
||||||
<string name="available_now">Dostępny teraz</string>
|
<string name="available_now">Dostępny teraz</string>
|
||||||
<string name="profile_activity_title">Profil</string>
|
<string name="profile_activity_title">Profil</string>
|
||||||
|
|
||||||
|
@ -455,5 +455,5 @@
|
|||||||
<string name="other_location">Not saved location.</string>
|
<string name="other_location">Not saved location.</string>
|
||||||
<string name="user_status_label" translatable="false">Status</string>
|
<string name="user_status_label" translatable="false">Status</string>
|
||||||
<string name="available_now">Available now</string>
|
<string name="available_now">Available now</string>
|
||||||
<string name="last_seen">Last seen</string>
|
<string name="last_sign">Last seen</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
Loading…
Reference in New Issue
Block a user