【问题标题】:Button Click and change int value?按钮单击并更改 int 值?
【发布时间】:2014-12-26 20:01:51
【问题描述】:

我制作了一个数据库应用程序。我有一个按钮和一个 int 值;我需要更改 int 值。

示例 = sayi = 1

按钮 1。点击=sayi = 2 按钮 2。点击 = sayi = 3

P.s = 抱歉,我不太懂英语。

int sayi = 1;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(layout.activity_main);
    final TextView oku = (TextView)findViewById(id.oku);
    final Button diger = (Button)findViewById(id.diger);
    diger.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            int sayi = 2;
        }
    });


    Veritabani veritabanim;
    veritabanim = new Veritabani(this);
    try {

        veritabanim.createDataBase();

    } catch (IOException ioe) {
        throw new Error("Unable to create database");
    }

    SQLiteDatabase dbm = veritabanim.getReadableDatabase();



    Cursor c = dbm.rawQuery("SELECT _id,soyleyen,soz FROM sozler WHERE _id = "+sayi+" ", null);
    if(c.moveToFirst()){
        do{

            //assing values
            String column1 = c.getString(0);
            String column2 = c.getString(1);
            String column3 = c.getString(2);
            //Do something Here with values
            oku.setText(column3);

        }while(c.moveToNext());
    }
    c.close();
    dbm.close();
    }
}

【问题讨论】:

  • 想要达到什么目的?
  • 将按钮的int sayi += 1; 中的int sayi = 2; 替换为int sayi += 1;... 但是您应该以某种方式使用它 - 这由您决定如何处理这个递增的变量。
  • 好吧,我做报价应用。例如,我有 1000 条报价,如果我点击按钮,_id 值就会改变,报价也会改变。
  • 实际上这行不通,因为他正在listner 范围内创建新的int。他应该使用已经声明的sayi 变量。
  • 噗!没用,我正在尝试 2 小时,我现在要疯了。

标签: android button click


【解决方案1】:

这样做...

int sayi = 1;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(layout.activity_main);
Button diger = (Button)findViewById(id.diger);
diger.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        sayi++;
        getDBOperation();
    }
});
}

private void getDBOperation()
{
    TextView oku = (TextView)findViewById(id.oku);

    Veritabani veritabanim;
    veritabanim = new Veritabani(this);
    try {
        veritabanim.createDataBase();
    } catch (IOException ioe) {
        throw new Error("Unable to create database");
    }

    SQLiteDatabase dbm = veritabanim.getReadableDatabase();

   Cursor c = dbm.rawQuery("SELECT _id,soyleyen,soz FROM sozler WHERE _id = "+sayi+" ", null);
   if(c.moveToFirst()){
       do{
          //assing values
         String column1 = c.getString(0);
         String column2 = c.getString(1);
         String column3 = c.getString(2);
         //Do something Here with values
         oku.setText(column3);
       }while(c.moveToNext());
  }
  c.close();
  dbm.close();
  }

【讨论】:

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