| /* |
| * 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.activity_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); |
| } |
| } |