【问题标题】:int value goes back to zero after closing voter app关闭选民应用程序后,int 值归零
【发布时间】:2021-02-26 15:59:49
【问题描述】:

所以一切正常,但一个主要问题是在关闭应用程序后每个值都回到零。 我如何防止这种情况发生。即使在应用程序关闭和重新打开后,我也想要更新的值。

public class second_app extends AppCompatActivity {

TextView A10;
TextView A11;
TextView A12;
TextView A13;
TextView A14;
TextView A15;
TextView A16;
TextView A17;
TextView A18;
TextView A19;

Button btnA10;
Button btnA11;
Button btnA12;
Button btnA13;
Button btnA14;
Button btnA15;
Button btnA16;
Button btnA17;
Button btnA18;
Button btnA19;



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

    A10 = findViewById ( R.id.tvA10 );
    A11 = findViewById ( R.id.tvA11 );
    A12 = findViewById ( R.id.tvA12 );
    A13 = findViewById ( R.id.tvA13 );
    A14 = findViewById ( R.id.tvA14 );
    A15 = findViewById ( R.id.tvA15);
    A16 = findViewById ( R.id.tvA16 );
    A17 = findViewById ( R.id.tvA17 );
    A18 = findViewById ( R.id.tvA18 );
    A19 = findViewById ( R.id.tvA19 );
    btnA10 = findViewById ( R.id.btnA10 );
    btnA11 = findViewById ( R.id.btnA11 );
    btnA12 = findViewById ( R.id.btnA12 );
    btnA13 = findViewById ( R.id.btnA13 );
    btnA14 = findViewById ( R.id.btnA14 );
    btnA15 = findViewById ( R.id.btnA15 );
    btnA16 = findViewById ( R.id.btnA16 );
    btnA17 = findViewById ( R.id.btnA17 );
    btnA18 = findViewById ( R.id.btnA18 );
    btnA19 = findViewById ( R.id.btnA19 );
    
}

public void A10clicked (View v){
    String A10count =A10.getText ().toString ().trim ();
    int count =Integer.parseInt ( A10count );
    count++;
    A10.setText ( String.valueOf ( count ) );
}
public void A11clicked (View v){
    String A11count =A11.getText ().toString ().trim ();
    int count =Integer.parseInt ( A11count );
    count++;
    A11.setText ( String.valueOf ( count ) );
}
public void A12clicked (View v){
    String A12count =A12.getText ().toString ().trim ();
    int count =Integer.parseInt ( A12count );
    count++;
    A12.setText ( String.valueOf ( count ) );
}
public void A13clicked (View v){
    String A13count =A13.getText ().toString ().trim ();
    int count =Integer.parseInt ( A13count );
    count++;
    A13.setText ( String.valueOf ( count ) );
}

public void A14clicked (View v){
    String A14count =A14.getText ().toString ().trim ();
    int count =Integer.parseInt ( A14count );
    count++;
    A14.setText ( String.valueOf ( count ) );
}

public void A15clicked (View v){
    String A15count =A15.getText ().toString ().trim ();
    int count =Integer.parseInt ( A15count );
    count++;
    A15.setText ( String.valueOf ( count ) );
}

public void A16clicked (View v){
    String A16count =A16.getText ().toString ().trim ();
    int count =Integer.parseInt ( A16count );
    count++;
    A16.setText ( String.valueOf ( count ) );
}

public void A17clicked (View v){
    String A17count =A17.getText ().toString ().trim ();
    int count =Integer.parseInt ( A17count );
    count++;
    A17.setText ( String.valueOf ( count ) );
}

public void A18clicked (View v){
    String A18count =A18.getText ().toString ().trim ();
    int count =Integer.parseInt ( A18count );
    count++;
    A18.setText ( String.valueOf ( count ) );
}
public void A19clicked (View v){
    String A19count =A19.getText ().toString ().trim ();
    int count =Integer.parseInt ( A19count );
    count++;
    A19.setText ( String.valueOf ( count ) );
}

}

任何帮助将不胜感激。

我尝试保存实例,但没有成功,要么我尝试实现 onbackpressed,但活动无法打开,我被困在这部分,一切都已完成。

【问题讨论】:

  • 您可能希望以某种方式将数据存储到磁盘。您可以将值保存到文件并在程序启动时读取。
  • 有什么方法可以通过代码来实现。例如,当我旋转我的应用程序时,所有值都变为零,但在使用保存实例后,它们保持旋转和纵向模式。

标签: integer increment


【解决方案1】:

变量中的值仅在应用程序运行时存储在内存中。正如 jakub 在评论中已经指出的那样,您需要使用某种持久存储来存储您的值。

有几种很好的方法可以做到这一点,您可以在 Lars Vogel 的这篇 https://www.vogella.com/tutorials/AndroidFileBasedPersistence/article.html 帖子中找到一个很好的概述。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多