Advertisement
Guest User

Untitled

a guest
Mar 13th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.14 KB | None | 0 0
  1. package atchat.aegis.com.myapplication;
  2.  
  3. import android.app.AlertDialog;
  4. import android.content.Context;
  5. import android.content.DialogInterface;
  6. import android.net.Uri;
  7. import android.os.AsyncTask;
  8. import android.os.Bundle;
  9. import android.support.v4.app.Fragment;
  10. import android.view.LayoutInflater;
  11. import android.view.View;
  12. import android.view.ViewGroup;
  13. import android.widget.Button;
  14. import android.widget.EditText;
  15. import android.widget.SeekBar;
  16. import android.widget.TextView;
  17. import android.widget.Toast;
  18.  
  19. import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
  20. import org.springframework.web.client.RestTemplate;
  21.  
  22. import java.util.concurrent.ExecutionException;
  23.  
  24. import application.Message.UpdatePairingDistanceMessage;
  25. import application.Message.UpdatePasswordMessage;
  26. import application.Users.LoggedInUserContainer;
  27. import application.Users.User;
  28.  
  29.  
  30. public class SettingsFragment extends Fragment {
  31.  
  32. private onSettingsFragmentInteractionListener mListener;
  33.  
  34. private static SeekBar Distance_Slider;
  35. private static TextView Distance_Text;
  36. private User user;
  37. private String website;
  38. EditText changedName;
  39. TextView chname;
  40. Button applyName;
  41. Button changenameButtonClick;
  42. public SettingsFragment() {
  43. // Required empty public constructor
  44. }
  45.  
  46.  
  47. public static SettingsFragment newInstance(){
  48. SettingsFragment fragment = new SettingsFragment();
  49. return fragment;
  50. }
  51.  
  52. @Override
  53. public void onCreate(Bundle savedInstanceState) {
  54. super.onCreate(savedInstanceState);
  55. }
  56. @Override
  57. public View onCreateView(LayoutInflater inflater, ViewGroup container,
  58. Bundle savedInstanceState) {
  59.  
  60.  
  61.  
  62. website = getString(R.string.localhost);
  63. user = LoggedInUserContainer.getInstance().getUser();
  64. // Inflate the layout for this fragment
  65. View view = inflater.inflate(R.layout.fragment_settings, container, false);
  66.  
  67. //changedName = (EditText) view.findViewById(R.id.changeAlias);
  68. // changedName.setHint("Change Name ("+(String)LoggedInUserContainer.getInstance().getUser().getAlias() + ")");
  69. // chname = (TextView) view.findViewById(R.id.name1);
  70. // applyName = (Button) view.findViewById(R.id.namebutton);
  71.  
  72. changenameButtonClick = (Button) view.findViewById(R.id.changeNameButton);
  73.  
  74.  
  75. changenameButtonClick.setOnClickListener(new View.OnClickListener() {
  76. @Override
  77.  
  78.  
  79. public void onClick(View view) {
  80. AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
  81. builder.setTitle("Name");
  82.  
  83. final EditText updatedName = new EditText(view.getContext());
  84. updatedName.setHint((String)LoggedInUserContainer.getInstance().getUser().getAlias());
  85. builder.setView(updatedName);
  86.  
  87. builder.setPositiveButton("Update", new DialogInterface.OnClickListener() {
  88. @Override
  89. public void onClick(DialogInterface dialogInterface, int i) {
  90. String finaltext = updatedName.getText().toString();
  91. Toast.makeText(getContext(), "Name has been updated!", Toast.LENGTH_SHORT).show();
  92. // try {
  93. // new UpdatePassword(finaltext).execute();
  94. // } catch (InterruptedException e) {
  95. // e.printStackTrace();
  96. // } catch (ExecutionException e) {
  97. // e.printStackTrace();
  98. // }
  99. }
  100. });
  101. builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
  102. @Override
  103. public void onClick(DialogInterface dialogInterface, int i) {
  104. Toast.makeText(getContext(), "Cancelled", Toast.LENGTH_SHORT).show();
  105.  
  106. }
  107. });
  108. builder.show();
  109.  
  110. // builder.setView()
  111.  
  112. }
  113. });
  114.  
  115. // applyName.setOnClickListener(new View.OnClickListener() {
  116. // @Override
  117. // public void onClick(View view) {
  118. // changedName.setVisibility(View.VISIBLE);
  119. // // String finaltext = changedName.getText().toString();
  120. // chname.setText(finaltext);
  121. // }
  122. // });
  123.  
  124.  
  125.  
  126.  
  127. // String name = (String)chname.getText();
  128.  
  129. Distance_Slider = (SeekBar) view.findViewById(R.id.distanceSlider);
  130. Distance_Text = (TextView) view.findViewById(R.id.distanceText);
  131.  
  132. Distance_Text.setText("Distance: " + LoggedInUserContainer.getInstance().getUser().getPairingDistance() + " km");
  133.  
  134.  
  135. Distance_Slider.setMax(20);
  136. Distance_Slider.setProgress((int)LoggedInUserContainer.getInstance().getUser().getPairingDistance());
  137.  
  138. Distance_Slider.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
  139. double DistanceValue = LoggedInUserContainer.getInstance().getUser().getPairingDistance();
  140. @Override
  141. public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
  142. DistanceValue = Math.min((0.5 + (double)(i)/2) , 10);
  143.  
  144. Distance_Text.setText("Distance: " + DistanceValue + " km" );
  145.  
  146. }
  147.  
  148. @Override
  149. public void onStartTrackingTouch(SeekBar seekBar) {
  150.  
  151. }
  152.  
  153. @Override
  154. public void onStopTrackingTouch(SeekBar seekBar) {
  155. try {
  156. new UpdatePairingDistance(DistanceValue).execute().get();
  157. } catch (InterruptedException e) {
  158. e.printStackTrace();
  159. } catch (ExecutionException e) {
  160. e.printStackTrace();
  161. }
  162. Distance_Text.setText("Distance: " + DistanceValue + " km");
  163. }
  164. });
  165.  
  166. return view;
  167. }
  168.  
  169.  
  170.  
  171. public void onViewCreated(View view, Bundle savedInstanceState) {
  172.  
  173. }
  174.  
  175. // TODO: Rename method, update argument and hook method into UI event
  176. public void onButtonPressed(Uri uri) {
  177. if (mListener != null) {
  178. mListener.onSettingsFragmentInteraction(uri);
  179. }
  180. }
  181.  
  182. @Override
  183. public void onAttach(Context context) {
  184. super.onAttach(context);
  185. if (context instanceof onSettingsFragmentInteractionListener) {
  186. mListener = (onSettingsFragmentInteractionListener) context;
  187. } else {
  188. throw new RuntimeException(context.toString()
  189. + " must implement onSettingsFragmentInteractionListener");
  190. }
  191. }
  192.  
  193. @Override
  194. public void onDetach() {
  195. super.onDetach();
  196. mListener = null;
  197. }
  198.  
  199. public interface onSettingsFragmentInteractionListener {
  200. void onSettingsFragmentInteraction(Uri uri);
  201. }
  202.  
  203. private class UpdatePairingDistance extends AsyncTask<Void, Void, Void> {
  204.  
  205. private double distance;
  206.  
  207. private UpdatePairingDistance(double distance){
  208. this.distance = distance;
  209. }
  210.  
  211. @Override
  212. protected Void doInBackground(Void... voids) {
  213.  
  214. UpdatePairingDistanceMessage updm = new UpdatePairingDistanceMessage(distance);
  215. updm.setSender(user.getId());
  216. final String url = website+"user/updatePairingDistance";
  217. RestTemplate restTemplate = new RestTemplate();
  218. restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
  219. try {
  220. restTemplate.postForObject(url, updm, User.class);
  221. }catch (Exception e){
  222.  
  223. }
  224. return null;
  225. }
  226. }
  227.  
  228. private class UpdatePassword extends AsyncTask<Void, Void, Void> {
  229.  
  230. private String changedPassword;
  231.  
  232.  
  233. private UpdatePassword(String changedPassword){
  234. this.changedPassword = changedPassword;
  235.  
  236. }
  237. @Override
  238. protected Void doInBackground(Void... voids) {
  239.  
  240. UpdatePasswordMessage upw = new UpdatePasswordMessage(changedPassword);
  241. upw.setSender(user.getId());
  242. final String url = website+"user/updatePassword";
  243. RestTemplate restTemplate = new RestTemplate();
  244. restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
  245. try {
  246. restTemplate.postForObject(url, upw, User.class);
  247. }catch (Exception e){
  248.  
  249. }
  250. return null;
  251. }
  252. }
  253. }
  254.  
  255.  
  256.  
  257.  
  258.  
  259. _------------------------------------------------------------------------------------------
  260.  
  261. <resources>
  262.  
  263. <!-- Base application theme. -->
  264. <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
  265. <!-- Customize your theme here. -->
  266. <item name="colorPrimary">@color/colorPrimary</item>
  267. <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
  268. <item name="colorAccent">@color/colorAccent</item>
  269.  
  270.  
  271. </style>
  272.  
  273. <style name="EditTextHint" parent="TextAppearance.AppCompat">
  274. <item name="colorAccent">@android:color/white</item>
  275. <item name="android:textColorHint">@color/AtChatYellow</item>
  276. <item name="colorControlNormal">@color/AtChatYellow</item>
  277. <item name="colorControlActivated">@color/AtChatYellow</item>
  278. <item name="colorControlHighlight">@color/AtChatYellow</item>
  279. </style>
  280.  
  281. </resources>
  282.  
  283. __---------------------------------------------------------------------------------------------------
  284.  
  285.  
  286. package application.Message;
  287.  
  288. public class UpdatePasswordMessage extends Message{
  289.  
  290. private String changedPassword;
  291.  
  292. public UpdatePasswordMessage(String changedPassword) {
  293.  
  294. }
  295.  
  296. public String getChangedPassword() {
  297. return changedPassword;
  298. }
  299.  
  300. public void setChangedPassword(String changedPassword) {
  301. this.changedPassword = changedPassword;
  302. }
  303.  
  304. }
  305. --------------------------------------------------------------------------------------------
  306.  
  307.  
  308. <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
  309. xmlns:app="http://schemas.android.com/apk/res-auto"
  310. xmlns:tools="http://schemas.android.com/tools"
  311. android:layout_width="match_parent"
  312. android:layout_height="match_parent"
  313. tools:context="atchat.aegis.com.myapplication.SettingsFragment">
  314.  
  315.  
  316. <SeekBar
  317. android:id="@+id/distanceSlider"
  318. android:layout_width="350dp"
  319. android:layout_height="wrap_content"
  320. android:layout_marginTop="60dp"
  321. app:layout_constraintRight_toRightOf="parent"
  322. app:layout_constraintTop_toBottomOf="parent"
  323. app:layout_constraintLeft_toLeftOf="parent" />
  324.  
  325.  
  326. <TextView
  327. android:id="@+id/distanceText"
  328. android:layout_width="wrap_content"
  329. android:layout_height="0dp"
  330. android:layout_marginLeft="40dp"
  331. android:layout_marginTop="20dp"
  332. android:text="Pairing distance in km"
  333. android:textColor="@color/AtChatYellow"
  334. app:layout_constraintLeft_toLeftOf="parent"
  335. app:layout_constraintTop_toTopOf="parent" />
  336.  
  337. <!--<EditText-->
  338. <!--android:layout_width="100dp"-->
  339. <!--android:layout_height="50dp"-->
  340. <!--android: android:text="dhi"-->
  341. <!--andro-->
  342. <!--app:layout_constraintTop_toTopOf="parent"-->
  343. <!--app:layout_constraintLeft_toLeftOf="parent"/>-->
  344. <!---->
  345.  
  346. <Button
  347. android:id="@+id/logoutButton1"
  348. android:layout_width="368dp"
  349. android:layout_height="60dp"
  350. android:layout_marginBottom="8dp"
  351. android:layout_marginStart="8dp"
  352. android:layout_marginTop="8dp"
  353. android:backgroundTint="#00000000"
  354. android:text="Logout"
  355. android:textAlignment="textStart"
  356. android:textColor="@color/AtChatYellow"
  357. app:layout_constraintBottom_toBottomOf="parent"
  358. app:layout_constraintEnd_toEndOf="parent"
  359. app:layout_constraintHorizontal_bias="0.0"
  360. app:layout_constraintLeft_toLeftOf="parent"
  361. app:layout_constraintStart_toStartOf="parent"
  362. app:layout_constraintTop_toTopOf="parent"
  363. app:layout_constraintVertical_bias="0.983" />
  364.  
  365. <TextView
  366. android:id="@+id/name1"
  367. android:layout_width="wrap_content"
  368. android:layout_height="wrap_content"
  369. android:layout_marginEnd="8dp"
  370. android:layout_marginStart="8dp"
  371. android:text="TextView"
  372. app:layout_constraintEnd_toEndOf="parent"
  373. app:layout_constraintStart_toStartOf="parent"
  374. tools:layout_editor_absoluteY="274dp" />
  375.  
  376. <Button
  377. android:id="@+id/namebutton"
  378. android:layout_width="92dp"
  379. android:layout_height="58dp"
  380. android:layout_marginBottom="8dp"
  381. android:layout_marginEnd="8dp"
  382. android:layout_marginStart="8dp"
  383. android:layout_marginTop="8dp"
  384. android:text="Apply"
  385. app:layout_constraintBottom_toBottomOf="parent"
  386. app:layout_constraintEnd_toEndOf="parent"
  387. app:layout_constraintHorizontal_bias="0.971"
  388. app:layout_constraintStart_toStartOf="parent"
  389. app:layout_constraintTop_toTopOf="parent"
  390. app:layout_constraintVertical_bias="0.748" />
  391.  
  392. <Button
  393. android:id="@+id/changeNameButton"
  394. android:layout_width="368dp"
  395. android:layout_height="60dp"
  396. android:layout_marginBottom="352dp"
  397. android:layout_marginStart="8dp"
  398. android:layout_marginTop="8dp"
  399. android:backgroundTint="#00000000"
  400. android:text="Change Name"
  401. android:textAlignment="textStart"
  402. android:textColor="@color/AtChatYellow"
  403. app:layout_constraintBottom_toBottomOf="parent"
  404. app:layout_constraintEnd_toEndOf="parent"
  405. app:layout_constraintHorizontal_bias="0.0"
  406. app:layout_constraintStart_toStartOf="parent"
  407. app:layout_constraintTop_toTopOf="parent"
  408. app:layout_constraintVertical_bias="0.659" />
  409.  
  410.  
  411. </android.support.constraint.ConstraintLayout>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement