| /* | |
| * Copyright 2013 The Android Open Source Project | |
| * | |
| * Licensed under the Apache License, Version 2.0 (the "License"); | |
| * you may not use this file except in compliance with the License. | |
| * You may obtain a copy of the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, software | |
| * distributed under the License is distributed on an "AS IS" BASIS, | |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| * See the License for the specific language governing permissions and | |
| * limitations under the License. | |
| */ | |
| package com.example.android.borderlessbuttons; | |
| import android.app.ListActivity; | |
| import android.content.ActivityNotFoundException; | |
| import android.content.Intent; | |
| import android.net.Uri; | |
| import android.os.Bundle; | |
| import android.view.Menu; | |
| import android.view.MenuItem; | |
| import android.view.View; | |
| import android.view.ViewGroup; | |
| import android.widget.BaseAdapter; | |
| import android.widget.Toast; | |
| /** | |
| * This activity demonstrates the <b>borderless button</b> styling from the Holo visual language. | |
| * The most interesting bits in this sample are in the layout files (res/layout/). | |
| * <p> | |
| * See <a href="http://developer.android.com/design/building-blocks/buttons.html#borderless"> | |
| * borderless buttons</a> at the Android Design guide for a discussion of this visual style. | |
| */ | |
| public class MainActivity extends ListActivity { | |
| private static final Uri DOCS_URI = Uri.parse( | |
| "http://developer.android.com/design/building-blocks/buttons.html#borderless"); | |
| protected void onCreate(Bundle savedInstanceState) { | |
| super.onCreate(savedInstanceState); | |
| setContentView(R.layout.sample_main); | |
| setListAdapter(mListAdapter); | |
| findViewById(R.id.cancel_button).setOnClickListener(new View.OnClickListener() { | |
| @Override | |
| public void onClick(View view) { | |
| finish(); | |
| } | |
| }); | |
| findViewById(R.id.ok_button).setOnClickListener(new View.OnClickListener() { | |
| @Override | |
| public void onClick(View view) { | |
| finish(); | |
| } | |
| }); | |
| } | |
| private BaseAdapter mListAdapter = new BaseAdapter() { | |
| @Override | |
| public int getCount() { | |
| return 10; | |
| } | |
| @Override | |
| public Object getItem(int position) { | |
| return null; | |
| } | |
| @Override | |
| public long getItemId(int position) { | |
| return position + 1; | |
| } | |
| @Override | |
| public View getView(int position, View convertView, ViewGroup container) { | |
| if (convertView == null) { | |
| convertView = getLayoutInflater().inflate(R.layout.list_item, container, false); | |
| } | |
| // Because the list item contains multiple touch targets, you should not override | |
| // onListItemClick. Instead, set a click listener for each target individually. | |
| convertView.findViewById(R.id.primary_target).setOnClickListener( | |
| new View.OnClickListener() { | |
| @Override | |
| public void onClick(View view) { | |
| Toast.makeText(MainActivity.this, | |
| R.string.touched_primary_message, | |
| Toast.LENGTH_SHORT).show(); | |
| } | |
| }); | |
| convertView.findViewById(R.id.secondary_action).setOnClickListener( | |
| new View.OnClickListener() { | |
| @Override | |
| public void onClick(View view) { | |
| Toast.makeText(MainActivity.this, | |
| R.string.touched_secondary_message, | |
| Toast.LENGTH_SHORT).show(); | |
| } | |
| }); | |
| return convertView; | |
| } | |
| }; | |
| @Override | |
| public boolean onCreateOptionsMenu(Menu menu) { | |
| super.onCreateOptionsMenu(menu); | |
| getMenuInflater().inflate(R.menu.main, menu); | |
| return true; | |
| } | |
| @Override | |
| public boolean onOptionsItemSelected(MenuItem item) { | |
| switch (item.getItemId()) { | |
| case R.id.docs_link: | |
| try { | |
| startActivity(new Intent(Intent.ACTION_VIEW, DOCS_URI)); | |
| } catch (ActivityNotFoundException ignored) { | |
| } | |
| return true; | |
| } | |
| return super.onOptionsItemSelected(item); | |
| } | |
| } |