| :
ckage com.example.android.movies.ui.main import android.os.Bundle import android.view.Menu import android.view.MenuItem import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProviders import androidx.recyclerview.widget.GridLayoutManager import com.example.android.movies.R import com.example.android.movies.data.models.Movie import com.example.android.movies.ui.moviedetails.MovieDetailsActivity import kotlinx.android.synthetic.main.activity_main.* import org.jetbrains.anko.startActivity class MainActivity : AppCompatActivity() { private lateinit var viewModel: MainViewModel private lateinit var adapter: MoviesAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) viewModel = ViewModelProviders.of(this).get(MainViewModel::class.java) viewModel.loadPopularMovies() adapter = MoviesAdapter { movie -> startActivity("movie" to movie) } moviesRecyclerView.layoutManager = GridLayoutManager(this, 2) moviesRecyclerView.adapter = adapter viewModel.movies.observe(this, Observer { adapter.movies = it adapter.notifyDataSetChanged() }) } override fun onCreateOptionsMenu(menu: Menu?): Boolean { menuInflater.inflate(R.menu.main_menu, menu) return true } override fun onOptionsItemSelected(item: MenuItem): Boolean { when (item.itemId) { R.id.action_popular -> { viewModel.loadPopularMovies() } R.id.action_top_rated -> { viewModel.loadTopRatedMovies() } } return true } }
ǸҳܰȨ۳ʱ踶ѹ
˴
ɨ븶Ѽɸ
| ģʽ | ͬ | | | նϵͳ | ֤ | ֤ | | ˻ | Զ̷ | Դַ· |