所以我在我的代碼中有奇怪的事件順序。這可能是我還沒有看到的小事。 A有ListView
,並且在單擊按鈕後從EditText
中拉取字符串。ListView在創建第二個項目後顯示項目
的EditText
生活在一個對話框,就是BEING由interface
現在會發生什麼拉回到主Activity
,是當我鍵入EditText
領域的東西說「是」,什麼也不顯示。但是當我去添加另一個「b」時,「a」出現。等等。所以必須創建一個爲了以前出現。
這是我所擁有的。
public class NewActivity extends FragmentActivity implements AddSiteDialog.AddSiteDialogListener {
ListView mSiteListView;
ArrayList<String> siteList = new ArrayList<String>();
CustomAdapter arrayAdapter = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.add_site);
mSiteListView = (ListView) findViewById(R.id.siteAddList);
arrayAdapter = new CustomAdapter();
mSiteListView.setAdapter(arrayAdapter);
Button b = (Button) findViewById(R.id.addSiteButton);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDialog();
}
});
}
public void showDialog() {
FragmentManager fm = getSupportFragmentManager();
AddSiteDialog addSiteDialog = new AddSiteDialog();
addSiteDialog.show(fm, "main");
}
public void onSignIn(String inputText) {
siteList.add(inputText);
}
class CustomAdapter extends ArrayAdapter<String> {
CustomAdapter() {
super(NewActivity.this, R.layout.add_site, siteList);
}
public View getView(int position, View convertView, ViewGroup parent){
View row = convertView;
if (row == null){
LayoutInflater inflater = getLayoutInflater();
row = inflater.inflate(R.layout.list_row, parent, false);
}
((TextView) row.findViewById(R.id.textViewId)).setText(siteList.get(position));
return (row);
}
}
}
任何人都可以那個地方,這是怎麼回事?
剛看了,谷歌IO視頻一個小時左右,以前......我完全理解你在說什麼:) – 2013-02-14 22:07:04