@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); System.out.println("大家好"); ScrollView scrollView = new ScrollView(this); mFlowLayout = new FlowLayout(this); mFlowLayout.setPadding(8, 8, 8, 8); final Random random = new Random(); for (int i = 0; i < 100; i++) { final TextView textView = new TextView(this); textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16); int nextInt = random.nextInt(1000) + 10; textView.setText(nextInt + ""); Drawable normal = DrawableUtil.getGradientDrawable(ColorUtil.getRandomColor()); Drawable pressed = DrawableUtil.getGradientDrawable(Color.GRAY); Drawable selector = DrawableUtil.getDrawableSelector(normal, pressed); textView.setBackgroundDrawable(selector); textView.setGravity(Gravity.CENTER_HORIZONTAL); textView.setPadding(5, 2, 5, 2); textView.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, textView.getText().toString(), 0).show(); ; } }); mFlowLayout.addView(textView); } scrollView.addView(mFlowLayout); setContentView(scrollView); }
private void bindSearchEngineView( final SearchEngine engine, final SearchEntryViewHolder viewHolder) { // when a suggestion is clicked, do a search OnClickListener clickListener = new OnClickListener() { @Override public void onClick(View v) { AwesomeBarTabs.OnUrlOpenListener listener = getUrlListener(); if (listener != null) { String suggestion = ((TextView) v.findViewById(R.id.suggestion_text)).getText().toString(); // If we're not clicking the user-entered view (the // first suggestion item) and the search matches a URL // pattern, go to that URL. Otherwise, do a search for // the term. if (v != viewHolder.userEnteredView && !StringUtils.isSearchQuery(suggestion, false)) { listener.onUrlOpen(suggestion, null); } else { listener.onSearch(engine.name, suggestion); } } } }; // when a suggestion is long-clicked, copy the suggestion into the URL EditText OnLongClickListener longClickListener = new OnLongClickListener() { @Override public boolean onLongClick(View v) { AwesomeBarTabs.OnUrlOpenListener listener = getUrlListener(); if (listener != null) { String suggestion = ((TextView) v.findViewById(R.id.suggestion_text)).getText().toString(); listener.onEditSuggestion(suggestion); return true; } return false; } }; // set the search engine icon (e.g., Google) for the row FlowLayout suggestionView = viewHolder.suggestionView; updateFavicon(viewHolder.iconView, engine.icon); // user-entered search term is first suggestion viewHolder.userEnteredTextView.setText(mSearchTerm); viewHolder.userEnteredView.setOnClickListener(clickListener); // add additional suggestions given by this engine int recycledSuggestionCount = suggestionView.getChildCount(); int suggestionCount = engine.suggestions.size(); boolean showedSuggestions = false; for (int i = 0; i < suggestionCount; i++) { String suggestion = engine.suggestions.get(i); View suggestionItem = null; // reuse suggestion views from recycled view, if possible if (i + 1 < recycledSuggestionCount) { suggestionItem = suggestionView.getChildAt(i + 1); suggestionItem.setVisibility(View.VISIBLE); } else { suggestionItem = getInflater().inflate(R.layout.awesomebar_suggestion_item, null); ((ImageView) suggestionItem.findViewById(R.id.suggestion_magnifier)) .setVisibility(View.GONE); suggestionView.addView(suggestionItem); } ((TextView) suggestionItem.findViewById(R.id.suggestion_text)).setText(suggestion); suggestionItem.setOnClickListener(clickListener); suggestionItem.setOnLongClickListener(longClickListener); if (mAnimateSuggestions) { showedSuggestions = true; AlphaAnimation anim = new AlphaAnimation(0, 1); anim.setDuration(ANIMATION_DURATION); anim.setStartOffset(i * ANIMATION_DURATION); suggestionItem.startAnimation(anim); } } // hide extra suggestions that have been recycled for (int i = suggestionCount + 1; i < recycledSuggestionCount; i++) { suggestionView.getChildAt(i).setVisibility(View.GONE); } if (showedSuggestions) mAnimateSuggestions = false; }