Привет! Я делаю последние штрихи к своему первому приложению. Это препятствие. Я пытаюсь назвать результаты моих
textview1.getText(k);
ниже до public boolean onOptionsItemSelected(MenuItem item,View v)
, где намерение позволяет пользователю отправить его.как текстовое сообщение, но по какой-то странной причине его не читают (k), я думаю, он не может найти переменную (k) по какой-то странной причине.полный код ниже, любая помощь приветствуется.
PS Извините, мой код небрежен, но еще немного новичок в программировании.
package com.Converter;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Toast;
public class Converter extends Activity {
Button b1 ;
EditText edittext;
RadioButton rad1, rad2;
TextView textview1 ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
edittext = (EditText) findViewById(R.id.edittext);
rad1 = (RadioButton) findViewById(R.id.rad1);
rad2 = (RadioButton) findViewById(R.id.rad2);
textview1 = (TextView) findViewById(R.id.textview1);
}
public void onClick(View v)
{
if(rad1.isChecked())
{
String s1 = edittext.getText().toString();
byte[] bytes = s1.getBytes();
StringBuilder k= new StringBuilder();
for (byte b : bytes)
{
int val = b - '0';
for (int i = 0; i < 8; i++)
{
k.append((val & 128) == 0 ? 0 : 1);
val <<= 1;
}
k.append(' ');
}
textview1.setText(k);
}
if(rad2.isChecked())
{
int charCode;
String k = "";
String b = edittext.getText().toString();;
while (b.length() > 8) {
charCode = Integer.parseInt(b.substring(0, 8),2);
k += new Character((char)charCode).toString();
b = b.substring(8);
}
if (b.length() > 0) {
//attempt handle any trailing bits that might be left
charCode = Integer.parseInt(b,2);
k += new Character((char)charCode).toString();
}
textview1.setText(k);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item,View v) {
String smsbody = textview1.getText(k);
switch (item.getItemId()) {
case R.id.icon: Intent sendIntent = new Intent(Intent.ACTION_VIEW);
sendIntent.putExtra("sms_body", smsbody);
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
break;
case R.id.text: Toast.makeText(this, "Testing!", Toast.LENGTH_LONG).show();
break;
case R.id.icontext: Toast.makeText(this, "Testing", Toast.LENGTH_LONG).show();
break;
}
return true;
}
}