![](/img/trans.png)
[英]Android Studio:PutExtra & GetStringExtra With Online Database (no value)
[英]Android java: putExtra and getStringExtra
(DatePickerActivity)>>選擇注釋類型(SelectTypeActivity)>>寫入txt文件(WriteNoteActivity) 。 這是過程 。 但是我必須將意圖SelectTypeActivity.class更改為WriteNoteActivity.class,這樣才能成功,如何無需跳過SelectTypeActivity也能夠做到的呢? =)
DatePickerActivity =創建文件夾
public void onClick(DialogInterface dialog, int which) {
Environment.getExternalStorageDirectory();
String dateN = edit_date.getText().toString();
edit_date.setTypeface(edit_date.getTypeface(), Typeface.BOLD_ITALIC);
File folder = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/CalendarNote/" + dateN);
boolean success = true;
if (!folder.exists()) {
success = folder.mkdirs();
}
if (success) {
Toast.makeText(getBaseContext(), "You have successfully created." , Toast.LENGTH_LONG ).show();
Intent w = new Intent(DatePickerActivity.this, WriteNoteActivity.class);
w.putExtra("the_date", dateN);
startActivity(w);
} else {
Toast.makeText(getBaseContext(), "You have Failed to create." , Toast.LENGTH_LONG ).show();
}
}
})
WriteNoteActivity =創建txt文件
public void onClick(DialogInterface dialog, int which) {
String content = edit_content.getText().toString();
String title = edit_title.getText().toString();
//String dateN = edit_date.getText().toString();
boolean success = true;
try {
String dateN = getIntent().getStringExtra("the_date");
File sdCardDir = Environment.getExternalStorageDirectory();
File targetFile;
targetFile = new File(sdCardDir.getCanonicalPath()
+ "/CalendarNote/" + dateN );
// File file=new File(folderPath + "/"+title+".txt");
File file=new File(targetFile + "/"+title+".txt");
if(!targetFile.exists()){
success = targetFile.mkdir();
}
RandomAccessFile raf = new RandomAccessFile(file, "rw");
raf.seek(file.length());
raf.write(content.getBytes());
raf.close();
} catch (IOException e) {
e.printStackTrace();
}
if (success) {
Toast.makeText(getBaseContext(), "You have successfully created." , Toast.LENGTH_LONG ).show();
} else {
Toast.makeText(getBaseContext(), "You have Failed to create." , Toast.LENGTH_LONG ).show();
}
//Toast.makeText(getBaseContext(), "Note have successfully saved." , Toast.LENGTH_LONG ).show();
}
})
任何不跳過SelectTypeActivity的建議? 也能夠從DatePickerActivity獲取StringExtra
我將把SelectTypeActivity更改為對話框,如果此活動的唯一目的是顯示不同類型的筆記,則可以像這樣以編程方式在對話框上進行對話框(而不是轉到SelectTypeActivity活動):
Dialog dialog = new Dialog(this);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Select Color Mode");
ListView modeList = new ListView(this);
String[] stringArray = new String[] { "Bright Mode", "Normal Mode" };
ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, stringArray);
modeList.setAdapter(modeAdapter);
builder.setView(modeList);
dialog = builder.create();
然后使用.setPositiveButton處理onclick按鈕
在此處查看更多詳細信息: 如何通過代碼在AlertDialog上單擊“確定”?
顯然,您必須使用注釋類型填充modeList
希望我能幫到你:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.