package com.rengwuxian.daggerdemo;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import com.rengwuxian.daggerdemo.model.Boss;
import com.rengwuxian.daggerdemo.model.Coder;
import javax.inject.Inject;
public class MainActivity extends Activity implements View.OnClickListener {
@Inject Coder coder;
@Inject Boss boss;
TextView textView;
Button codeBt;
Button nextCoderBt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.textView);
codeBt = (Button) findViewById(R.id.codeBt);
nextCoderBt = (Button) findViewById(R.id.nextCoderBt);
// 注入依赖
App app = (App) getApplication();
app.inject(this);
// 将程序员的编号写到ActionBar和按钮
ActionBar actionBar = getActionBar();
actionBar.setTitle("程序员" + coder.number + "的工位");
codeBt.setText(getString(R.string.coder_code, coder.number));
nextCoderBt.setText(getString(R.string.next_coder, boss.name));
// 设置监听器
codeBt.setOnClickListener(this);
nextCoderBt.setOnClickListener(this);
}
/**
* 程序员编码
*/
public void code() {
coder.code();
String conversation = textView.getResources().getString(R.string.words_when_coding, coder.number, coder.lineCount);
textView.setText(conversation + "\n" + boss.check(coder.lineCount));
}
/**
* 老板去另一个工位
*/
public void nextCoder() {
startActivity(new Intent(this, MainActivity.class));
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.codeBt:
code();
break;
case R.id.nextCoderBt:
nextCoder();
break;
}
}
}