请谅解,这是我的第一个应用程序。我的应用程序并不是太具有革命性,但我想通过实现一些自定义选择器使其更加用户友好。例如,使用日历视图的日期选择器或类似Spinner的水平流动选择器(就像SetCPU一样)。不幸的是,我甚至不知道如何开始构建这些自定义UI组件。
请谅解,这是我的第一个应用程序。我的应用程序并不是太具有革命性,但我想通过实现一些自定义选择器使其更加用户友好。例如,使用日历视图的日期选择器或类似Spinner的水平流动选择器(就像SetCPU一样)。不幸的是,我甚至不知道如何开始构建这些自定义UI组件。
/* Simple Dialog
Dialog dialog = new Dialog(this);
dialog.setTitle("Hello");
dialog.show();
*/
/* Inflating an layout as the Dialog
Dialog loginDialog = new Dialog(this);
View layout = LayoutInflater.from(this).inflate(R.layout.login, null);
loginDialog.setContentView(layout);
Button btn = (Button)(layout.findViewById(R.id.button1));
final EditText txt = (EditText) layout.findViewById(R.id.editText1);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
//Toast.makeText(getApplicationContext(), txt.getText().toString(), Toast.LENGTH_SHORT).show();
txt.setText("Ahmedabad");
}
});
loginDialog.show();
/* ProgreessBar Dialog (you need to implement thread)
ProgressDialog dialog = new ProgressDialog(this);
dialog.setProgressStyle(2);
dialog.show();
*/
/* Alert Dialog to alert a mesage or an error or customize exception like Enter the field, etc.
AlertDialog dialog = new AlertDialog.Builder(this).create();
dialog.setMessage("Message");
dialog.setIcon(R.drawable.ic_launcher);
dialog.setTitle("Done");
dialog.show();
*/
/* ------------------- Binding array items into the spinner ---------------------------
sp = (Spinner)findViewById(R.id.spinner1);
String bloodgroups[]={
"A +ve","B +ve","O +ve","AB +ve","A -ve","B -ve","O -ve","AB -ve"
};
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout .simple_spinner_dropdown_item,bloodgroups);
sp.setAdapter(adapter);
*/
/* DatePicker Dialog Code: I have used a button whose click event bring datepicker dialog into focus
Button btnselDate = (Button)findViewById(R.id.btnseldate); // date select button
// ----------------------------- DATE PICKER DIALOG PROMPT ---------------------
btnselDate.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
// TODO Auto-generated method stub
showDialog(1);
}
});
@Override
protected Dialog onCreateDialog(int id) {
DatePickerDialog dialog = new DatePickerDialog(this, new OnDateSetListener()
{
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
((EditText)findViewById(R.id.txtdate)).setText(dayOfMonth + "/" + monthOfYear + "/" + year);
}
}, new GregorianCalendar().get(Calendar.YEAR), new GregorianCalendar().get(Calendar.MONTH), new GregorianCalendar().get(Calendar.DAY_OF_MONTH));
return dialog;
}
*/
好吧,我决定暂时放弃了,但对于其他人来说,这个网页确实帮助我至少理解了一下。
http://mindtherobot.com/blog/272/android-custom-ui-making-a-vintage-thermometer/