Newer
Older
RxSprout / app / src / main / java / com / example / sprout / refactor / activity / RoomMainActivity.java
package com.example.sprout.refactor.activity;

import android.databinding.DataBindingUtil;
import android.os.Bundle;
import android.widget.Toast;

import com.example.sprout.R;
import com.example.sprout.databinding.RfActivityRoomMainBinding;
import com.example.sprout.refactor.Constant;
import com.example.sprout.refactor.adapter.RoomMainAdapter;
import com.example.sprout.refactor.common.ActivityEvent;
import com.example.sprout.refactor.contract.ViewContract;
import com.example.sprout.refactor.viewmodel.RoomMainViewModel;

import framework.gameMain.RealTimeActivity;

public class RoomMainActivity extends RealTimeActivity implements ViewContract {

    private RoomMainViewModel roomMainViewModel = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        RfActivityRoomMainBinding binding = DataBindingUtil.setContentView(this, R.layout.rf_activity_room_main);
        roomMainViewModel = new RoomMainViewModel(new RoomMainAdapter(this), (ViewContract) this);
        binding.setViewModel(roomMainViewModel);
        getLifecycle().addObserver(roomMainViewModel);
    }

    @Override
    protected void onResume() {
        super.onResume();
        this.start(Constant.ROOM_UPDATE_DELAY, Constant.ROOM_UPDATE_INTERVAL);
    }

    @Override
    protected void onPause() {
        super.onPause();
        this.stop();
    }

    @Override
    protected void update(long interval) {
        roomMainViewModel.update();
    }

    @Override
    public void startActivity(ActivityEvent event) {

    }

    @Override
    public void finishActivity() {
        finish();
    }

    @Override
    public void showShortToast(String message) {
        Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
    }

    @Override
    public void showLongToast(String message) {
        Toast.makeText(this, message, Toast.LENGTH_LONG).show();
    }
}