1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 package org
.chromium
.chromoting
;
7 import android
.accounts
.Account
;
8 import android
.content
.Context
;
9 import android
.view
.LayoutInflater
;
10 import android
.view
.View
;
11 import android
.view
.ViewGroup
;
12 import android
.widget
.ArrayAdapter
;
13 import android
.widget
.TextView
;
15 /** SpinnerAdapter class used for the ActionBar accounts spinner. */
16 public class AccountsAdapter
extends ArrayAdapter
<Account
> {
17 private LayoutInflater mInflater
;
19 public AccountsAdapter(Context context
, Account
[] accounts
) {
20 // ArrayAdapter only uses the |resource| parameter to return a View from getView() and
21 // getDropDownView(). But these methods are overridden here to return custom Views, so it's
22 // OK to provide 0 as the resource for the base class.
23 super(context
, 0, accounts
);
24 mInflater
= (LayoutInflater
) context
.getSystemService(Context
.LAYOUT_INFLATER_SERVICE
);
28 public View
getView(int position
, View convertView
, ViewGroup parent
) {
29 View view
= convertView
;
31 view
= mInflater
.inflate(R
.layout
.account_selected
, parent
, false);
33 Account account
= getItem(position
);
34 TextView target
= (TextView
) view
;
35 target
.setText(account
.name
);
40 public View
getDropDownView(int position
, View convertView
, ViewGroup parent
) {
41 TextView view
= (TextView
) mInflater
.inflate(R
.layout
.account_dropdown
, parent
, false);
42 Account account
= getItem(position
);
43 view
.setText(account
.name
);