package com.github.captain_miao.agera.tutorial; import android.databinding.DataBindingUtil; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.Menu; import android.view.View; import android.widget.Button; import com.github.captain_miao.agera.tutorial.databinding.ActivityMainBinding; import com.github.captain_miao.agera.tutorial.helper.ActivityNavigation; import com.github.captain_miao.agera.tutorial.listener.OnViewClickListener; import com.github.captain_miao.agera.tutorial.model.ActInfo; import java.util.HashMap; import java.util.Map; public class MainActivity extends AppCompatActivity implements OnViewClickListener { private static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //ActivityMainBinding binding = ActivityMainBinding.inflate(getLayoutInflater()); //setContentView(binding.getRoot()); ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main); binding.setClickListener(this); binding.setMap(mActInfoMap); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main_menu, menu); return true; } @Override public void onClick(View v) { if(v instanceof Button) { String name = ((Button) v).getText().toString(); ActivityNavigation.from(this).toUri(mActInfoMap.get(name).getUrl()); } } private Map<String, ActInfo> mActInfoMap = new HashMap<String, ActInfo>() {{ put("change_color", new ActInfo("change_color", "tutorial://agera/activity_a")); put("change_image", new ActInfo("change_image", "tutorial://agera/activity_b")); put("mutable_repository", new ActInfo("mutable_repository", "tutorial://agera/activity_c")); put("with_recycle_view", new ActInfo("with_recycle_view", "tutorial://agera/activity_d")); put("with_view_page", new ActInfo("with_view_page", "tutorial://agera/activity_e")); put("with_repository_adapter", new ActInfo("with_repository_adapter", "tutorial://agera/activity_f")); put("with_complex_recycle_view", new ActInfo("with_complex_recycle_view", "tutorial://agera/activity_g")); put("with_reservoir", new ActInfo("with_reservoir", "tutorial://agera/activity_h")); put("with_functions", new ActInfo("with_functions", "tutorial://agera/activity_i")); }}; }