2016-12-17 3 views
0

У меня есть два Activities в моей заявке. На первом Activity показан список всех видеороликов. Когда я нажимаю на любое видео, открывается еще Activity, который вызывает VideoEditorActivity.Сохранить изменения, сделанные пользователем в editText

Все, что я хочу, когда пользователь вносит изменения в поле заголовка видео, пользователь должен иметь возможность сохранять изменения, которые он сделал с помощью FloatingActionButton. Я не хочу использовать sharedPreference или базу данных или файл ввода/вывода. Я хочу, чтобы эти изменения были локально только через сервер.

Это мой POJO:

public class VideoDetail implements Serializable { 
    private static final long serialVersionUID = -5294188737237640015L; 

    private String title; 

    public String getTitle() { 
     return title; 
    } 

    public VideoDetail (JSONObject jsonObject){ 
     try { 
      title = jsonObject.getString("title"); 
      catch (JSONException e) { 
       e.printStackTrace(); 
      } 
     } 
    } 
} 

И это VideoEditorActivity

public class VideoEditorActivity extends AppCompatActivity { 

    EditText etTitle; 
    FloatingActionButton btnSave; 

    btnSave = (FloatingActionButton) findViewById(R.id.fab); 

    etTitle = (EditText) findViewById(R.id.title); 
    final VideoDetail videoDetail = (VideoDetail) getIntent().getSerializableExtra("key"); 
    etTitle.setText(videoDetail.getTitle()); 

    btnSave.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      // something need to do here 
      // code here 

     } 
    }); 
} 
+0

Отформатирован код. Но как утверждается этот вопрос, это не имеет никакого смысла. – Eldelshell

+0

Я отредактировал вопрос, чтобы исправить грамматику и пунктуацию. Я также отформатировал кодовые слова в тексте, чтобы вопрос был более понятным для читателя и изменил аббревиатуру «FAB» на ее длительный смысл. Надеюсь, теперь вопрос яснее. – CocoNess

+0

спасибо coconess –

ответ

0

Просто используйте что-то вроде клиента Apache HTTP для отправки сообщений на сервер.

import org.apache.http.client.methods.HttpPost; 

btnSave.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     new AsyncTask<String, Void, Void>() { 
      @Override 
      protected Void doInBackground(String... data) { 
       String url = data[0]; 
       String userID = data[1]; 
       String title = data[2]; 

       HttpPost post = new HttpPost(url); 

       List<NameValuePair> params = new ArrayList<NameValuePair>(); 
       params.add(new BasicNameValuePair("user", userID)); 
       params.add(new BasicNameValuePair("title", title)); 

       post.setEntity(new UrlEncodedFormEntity(params)); 

       new DefaultHttpClient().execute(post); 
      } 
     }.execute(<your server url>, <user ID>, etTitle.getText()); 
    } 
} 

Очевидно, что для поддержки этого потребуется встроенная реализация.

Смежные вопросы