2016-09-21 75 views
0

我想的setText()来按钮的setText()将不实际的setText

Button btnFloor, btnTable; 

这是不工作的ATM,其实我想从

FloorsActivity发送数据 - > TablesActivity - > NewOrdersActivity

那么我如何将数据从活动传递到另一个?

FloorsActivity.java

@Override 
public void onFloorItemClicked(int id) { 


    Intent intent = new Intent(this, TablesActivity.class); 
    intent.putExtra("FloorId", id); 
    startActivity(intent); 

    Toast.makeText(this, "Floor id : " + String.valueOf(id), Toast.LENGTH_SHORT).show(); 

} 

TablesActivity.java

int floorId; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_floors_tables); 
    initViews(); 

    Intent intent = getIntent(); 
    floorId = intent.getIntExtra("FloorId", 1); 
} 

@Override 
public void onTableItemClicked(String name) { 

    String floorName = "F" + floorId; 

    Intent intent = new Intent(this, NewOrderActivity.class); 
    intent.putExtra("FloorId", floorId); 
    intent.putExtra("TableName", name); 
    intent.putExtra("FloorName", floorName); 
    startActivity(intent); 

    Toast.makeText(this, "Table Name : " + String.valueOf(name), Toast.LENGTH_SHORT).show(); 

} 

NewOrderActivity.java

String floorName; 
String tableName; 
int floorId; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_new_order); 
    initViews(); 

    Intent intent = getIntent(); 
    floorName = intent.getStringExtra("FloorName"); 
    tableName = intent.getStringExtra("TableName"); 
    floorId = intent.getIntExtra("FloorId", 1); 
} 

public void initViews() { 

    // Fetch view 
    btnFloor = (Button) findViewById(R.id.btn_floor); 
    btnTable = (Button) findViewById(R.id.btn_table); 

    //Set Views 

    btnFloor.setText(floorName); 
    btnTable.setText(tableName); 

    btnFloor.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      Intent intent = new Intent(NewOrderActivity.this, FloorsActivity.class); 
      startActivity(intent); 
     } 
    }); 

    btnTable.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 

      Intent intent = new Intent(NewOrderActivity.this, TablesActivity.class); 
      intent.putExtra("FloorId", floorId); 
      startActivity(intent); 

     } 
    }); 

NewOrdersActivity是我正在尝试设置文本

这是我的承诺在Github上这个full change 这里是链接到这个project

+0

请把它应用到你的问题之前,阅读标签说明。 [tag:git]标签用于解决有关Git使用和工作流程的问题,而不是编写涉及Git回购的问题。 (我建议编辑删除它。) –

回答

1

你叫initViews()你已经超载的意图额外的面前。

固定NewOrderActivity.java

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_new_order); 

    Intent intent = getIntent(); 
    floorName = intent.getStringExtra("FloorName"); 
    tableName = intent.getStringExtra("TableName"); 
    floorId = intent.getIntExtra("FloorId", 1); 
    initViews(); 
} 
+0

谢谢,@whitebrow你可以发送给我一个关于github的pull请求吗?只是这样我才能保留你的作者的这一变化。 –

+0

唉我没有拉请求的权限:)试图与桌面客户端。 – whitebrow

+0

我已发送Github协作者邀请函到您的邮件中,请您检查您的邮件收件箱。一旦你接受这个邀请,你可以直接推送到这个存储库 –