2017-07-24 49 views
-3

我有一套應該更新捐款的文本。這是迄今爲止所有捐贈的總和。在捐贈活動中,當捐贈按鈕被按下時,我更新了一個號碼,該號碼保存了迄今爲止的全部捐款。然後使用getter將捐贈活動中的號碼發送到我的主要活動,並將文本設置爲號碼,但號碼不會更新。我有一種感覺可能是因爲我不刷新文本,但我不確定。如果是這樣的話,我不知道該怎麼說,當點擊donation按鈕來設置文本的不同活動時。 捐贈活動:設置文本無效?

public class DonationAmount extends AppCompatActivity { 
public static double donateAmount = 0; 
TextView donateAmountView; 
Button donateButton; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_donation_amount); 
    donateButton = (Button) findViewById(R.id.donate); 
    donateAmountView = (TextView) findViewById(R.id.donateAmount); 
    donateButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      donateAmount += Double.parseDouble(donateAmountView.getText().toString()); 
     } 
    }); 
} 
public static double getDonateAmount() { 
    return donateAmount; 
} 

}

主要活動

public class MainActivity extends AppCompatActivity { 
TextView totalDonations; 
private String mercheantKey, userCredentials; 
private PaymentParams paymentParams; 
private PayuConfig payuConfig; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 
    totalDonations = (TextView) findViewById(R.id.totalDonation); 
    final FloatingActionButton donateButton = (FloatingActionButton) findViewById(R.id.fab); 
    donateButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      Intent donateActivity = new Intent(MainActivity.this, DonationAmount.class); 
      startActivity(donateActivity); 
      totalDonations.setText(Double.toString(DonationAmount.getDonateAmount())); 
     } 
    }); 
} 
+0

活動前的方法的問題是前調用'setText'你重定向到新的活動。 – Piyush

+0

首先設置文本,然後重定向到下一個活動。 @Archishmaan – Ankita

+0

對不起,我忘了提到,我最初有它後totalDonations =(TextView)....但它沒有工作,所以我把它移到那裏 –

回答

0

當按鈕點擊呼叫放的setText調用像婁代碼

donateButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
totalDonations.setText(Double.toString(DonationAmount.getDonateAmount())); 
      Intent donateActivity = new Intent(MainActivity.this, DonationAmount.class); 
      startActivity(donateActivity); 

     } 
    }); 
+0

由於某些原因文本需要大量時間來更新,您是否知道如何解決此問題 –