2016-09-21 77 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協作者邀請函到您的郵件中,請您檢查您的郵件收件箱。一旦你接受這個邀請,你可以直接推送到這個存儲庫 –