android.widget.ArrayAdapter

Here are the examples of the java api android.widget.ArrayAdapter taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

1162 Examples 7

19 Source : BookmarkActivity.java
with GNU General Public License v3.0
from zzzmobile

/**
 * Created by Usman Jamil on 4/18/2017.
 */
public clreplaced BookmarkActivity extends AppCompatActivity implements iConstants {

    ListView lv;

    SharedPreferences pref;

    Map<String, ?> bmList;

    ArrayAdapter adapter;

    String[] lisreplacedems;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.bookmark);
        // For intersreplacedials
        // if(AppLovinIntersreplacedialAd.isAdReadyToDisplay(this)){
        // // An ad is available to display.  It's safe to call show.
        // AppLovinIntersreplacedialAd.show(this);
        // Log.d("APPLOVINReady=====>","YES");
        // }
        // else{
        // // No ad is available to display.  Perform failover logic...
        // Log.d("Not Ready=====>","YES");
        // }
        getSupportActionBar().setreplacedle("Bookmarks");
        getSupportActionBar().show();
        lv = (ListView) findViewById(R.id.ListView);
        pref = getSharedPreferences(PREF_APPNAME, 0);
        bmList = pref.getAll();
        lisreplacedems = new String[bmList.size()];
        // bmList.toString();
        int i = 0;
        for (Map.Entry<String, ?> entry : bmList.entrySet()) {
            // Log.d("map values", entry.getKey() + ": " + entry.getValue().toString());
            lisreplacedems[i] = entry.getKey();
            i++;
        }
        adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, lisreplacedems);
        lv.setAdapter(adapter);
        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
                String uri = "";
                uri = lisreplacedems[position];
                iUtils.ShowToast(BookmarkActivity.this, uri);
                Intent intent = new Intent(BookmarkActivity.this, MainActivity.clreplaced);
                Bundle b = new Bundle();
                // Your id
                b.putString("URL", uri);
                // Put your id to your next Intent
                intent.putExtras(b);
                startActivity(intent);
                finish();
            }
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.bookmarks, menu);
        return true;
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        if (item.gereplacedemId() == R.id.action_delete) {
            new AlertDialog.Builder(this).setreplacedle("Delete").setMessage("Do you really want to delete all bookmarks?").setIcon(android.R.drawable.ic_dialog_alert).setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface dialog, int whichButton) {
                    pref.edit().clear().commit();
                    iUtils.ShowToast(BookmarkActivity.this, "Deleted!");
                    finish();
                }
            }).setNegativeButton(android.R.string.no, null).show();
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

19 Source : FileChooseUtil.java
with GNU General Public License v3.0
from zsakvo

public clreplaced FileChooseUtil extends DialogFragment implements android.content.DialogInterface.OnClickListener {

    public static final int PERMISSION_REQUEST = 573;

    private SimpleFileChooserListener mSFCListener;

    private String mRootPath, mCurrentPath;

    private ArrayList<String> mDirs;

    private ArrayAdapter<String> mAdapter;

    private ListView mListViewDirs;

    private boolean mShowHidden = true;

    public interface SimpleFileChooserListener {

        void onFileChosen(File file);

        void onDirectoryChosen(File directory);

        void onCancel();
    }

    public Dialog onCreateDialog(Bundle savedInstanceState) {
        mCurrentPath = mRootPath = mRootPath == null ? Environment.getExternalStorageDirectory().getAbsolutePath() : mRootPath;
        try {
            mRootPath = new File(mRootPath).getCanonicalPath();
        } catch (IOException e) {
            e.printStackTrace();
        }
        mDirs = getFilesInDirectory(mRootPath);
        mAdapter = new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_single_choice, mDirs);
        final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setSingleChoiceItems(mAdapter, -1, this).setPositiveButton(android.R.string.ok, this).setNegativeButton(android.R.string.cancel, this).setreplacedle(getDirectoryName());
        AlertDialog alert = builder.create();
        mListViewDirs = alert.getListView();
        return alert;
    }

    @Override
    public void onClick(DialogInterface dialog, int which) {
        File current = new File(mCurrentPath);
        switch(which) {
            case Dialog.BUTTON_POSITIVE:
                if (current.isDirectory())
                    mSFCListener.onDirectoryChosen(current);
                if (current.isFile())
                    mSFCListener.onFileChosen(current);
                break;
            case Dialog.BUTTON_NEGATIVE:
                mSFCListener.onCancel();
                break;
            default:
                selectFile(which);
                break;
        }
    }

    /**
     * Select new file or directory
     */
    private void selectFile(int which) {
        File current = new File(mCurrentPath);
        try {
            // noinspection ResultOfMethodCallIgnored
            current.getCanonicalPath();
        } catch (IOException e) {
            e.printStackTrace();
            return;
        }
        if (current.isFile())
            mCurrentPath = mCurrentPath.substring(0, mCurrentPath.lastIndexOf("/"));
        String selected = mDirs.get(which).replace("/", "");
        if (selected.equals("..")) {
            mCurrentPath = mCurrentPath.substring(0, mCurrentPath.lastIndexOf("/"));
            refreshListView();
        } else {
            mCurrentPath += "/" + selected;
            current = new File(mCurrentPath);
            if (!current.isFile())
                refreshListView();
        }
        if (!current.isFile())
            getDialog().setreplacedle(getDirectoryName());
    }

    /**
     * Update ListView's items
     */
    private void refreshListView() {
        mDirs.clear();
        mDirs.addAll(getFilesInDirectory(mCurrentPath));
        mAdapter.notifyDataSetChanged();
        if (!new File(mCurrentPath).isFile())
            for (int i = 0; i < mListViewDirs.getCount(); i++) mListViewDirs.sereplacedemChecked(i, false);
    }

    /**
     * Get readable directory name
     */
    private String getDirectoryName() {
        return mCurrentPath.substring(mCurrentPath.lastIndexOf("/"));
    }

    /**
     * Get all files ascending in current directory
     *
     * @param dir
     * Target directory
     */
    private ArrayList<String> getFilesInDirectory(String dir) {
        ArrayList<String> dirs = new ArrayList<>();
        try {
            File currentDir = new File(dir);
            if (!dir.equals(mRootPath))
                dirs.add("..");
            if (!currentDir.exists() || !currentDir.isDirectory())
                return dirs;
            for (File file : currentDir.listFiles()) {
                if (!mShowHidden && file.isHidden())
                    continue;
                if (file.isDirectory())
                    dirs.add(file.getName() + "/");
                else
                    dirs.add(file.getName());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        Collections.sort(dirs, new Comparator<String>() {

            public int compare(String s1, String s2) {
                return s1.toLowerCase().compareTo(s2.toLowerCase());
            }
        });
        return dirs;
    }

    /**
     * Set callback for file, directory or nothing selected
     *
     * @param sfc
     * Listener
     */
    public void setOnChosenListener(SimpleFileChooserListener sfc) {
        mSFCListener = sfc;
    }

    /**
     * Show/hide hidden files/directories<br>
     * Default = true
     *
     * @param showHidden
     * Show or not
     */
    public void setShowHidden(boolean showHidden) {
        this.mShowHidden = showHidden;
    }

    /**
     * Set default root directory path<br>
     * Default = external storage directory
     *
     * @param rootPath
     * Root path
     */
    public void setRootPath(String rootPath) {
        this.mRootPath = rootPath;
    }
}

19 Source : MainActivity.java
with MIT License
from zhkrb

public clreplaced MainActivity extends AppCompatActivity implements View.OnClickListener {

    private ImageView mImageView;

    private RadioGroup mRadioGroup;

    private AutoCompleteTextView mTextView;

    private TextView mResultTextView;

    private static final String ua = "Mozilla/5.0 (Linux; Android 6.0.1; SM-G920V Build/MMB29K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.98 Mobile Safari/537.36";

    private ArrayAdapter<String> mAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        findViewById(R.id.btn_start).setOnClickListener(this);
        mImageView = findViewById(R.id.image);
        mRadioGroup = findViewById(R.id.radio);
        mTextView = findViewById(R.id.text);
        mResultTextView = findViewById(R.id.result);
        mResultTextView.setMovementMethod(ScrollingMovementMethod.getInstance());
        updateImageState(0x01);
        mAdapter = getUserIdAdapter();
        mTextView.setAdapter(mAdapter);
    }

    @Override
    public void onClick(View view) {
        if (TextUtils.isEmpty(mTextView.getText())) {
            Toast.makeText(getApplicationContext(), "You need to enter the url", Toast.LENGTH_SHORT).show();
            return;
        }
        String url = mTextView.getText().toString().trim();
        addInputHistory(url);
        int id = mRadioGroup.getCheckedRadioButtonId();
        switch(id) {
            case R.id.btn1:
                updateImageState(0x02);
                Cloudflare cloudflare = new Cloudflare(url);
                cloudflare.setUser_agent(ua);
                cloudflare.getCookies(new Cloudflare.cfCallback() {

                    @Override
                    public void onSuccess(List<HttpCookie> cookieList, boolean hasNewUrl, String newUrl) {
                        updateImageState(0x03);
                        setText(cookieList, hasNewUrl, newUrl);
                    }

                    @Override
                    public void onFail(String msg) {
                        updateImageState(0x04);
                        setText(msg);
                    }
                });
                break;
            case R.id.btn2:
                updateImageState(0x02);
                com.zhkrb.cloudflare_scrape_android.Cloudflare cloudflare1 = new com.zhkrb.cloudflare_scrape_android.Cloudflare(url);
                cloudflare1.setUser_agent(ua);
                cloudflare1.getCookies(new com.zhkrb.cloudflare_scrape_android.Cloudflare.cfCallback() {

                    @Override
                    public void onSuccess(List<HttpCookie> cookieList, boolean hasNewUrl, String newUrl) {
                        updateImageState(0x03);
                        setText(cookieList, hasNewUrl, newUrl);
                    }

                    @Override
                    public void onFail(String msg) {
                        updateImageState(0x04);
                        setText(msg);
                    }
                });
                break;
            case R.id.btn3:
                updateImageState(0x02);
                com.zhkrb.cloudflare_scrape_webview.Cloudflare cloudflare2 = new com.zhkrb.cloudflare_scrape_webview.Cloudflare(this, url);
                cloudflare2.setUser_agent(ua);
                cloudflare2.setCfCallback(new com.zhkrb.cloudflare_scrape_webview.CfCallback() {

                    @Override
                    public void onSuccess(List<HttpCookie> cookieList, boolean hasNewUrl, String newUrl) {
                        updateImageState(0x03);
                        setText(cookieList, hasNewUrl, newUrl);
                        new Thread(() -> {
                            try {
                                Doreplacedent doreplacedent = Jsoup.connect(url).userAgent(ua).cookies(ConvertUtil.List2Map(cookieList)).timeout(30000).get();
                                LogUtil.e(doreplacedent.toString());
                                runOnUiThread(() -> Toast.makeText(getApplicationContext(), "jsoup test success", Toast.LENGTH_SHORT).show());
                            } catch (IOException e) {
                                e.printStackTrace();
                                runOnUiThread(() -> Toast.makeText(getApplicationContext(), "jsoup test failed", Toast.LENGTH_SHORT).show());
                            }
                        }).start();
                    }

                    @Override
                    public void onFail(int code, String msg) {
                        updateImageState(0x04);
                        setText(msg);
                    }
                });
                cloudflare2.getCookies();
                break;
            default:
                Toast.makeText(getApplicationContext(), "Need select one", Toast.LENGTH_SHORT).show();
        }
    }

    private void updateImageState(int state) {
        switch(state) {
            case 0x01:
                mImageView.setImageResource(R.drawable.ic_new_releases_black_24dp);
                break;
            case 0x02:
                mImageView.setImageResource(R.drawable.ic_autorenew_black_24dp);
                break;
            case 0x03:
                mImageView.setImageResource(R.drawable.ic_beenhere_black_24dp);
                break;
            case 0x04:
                mImageView.setImageResource(R.drawable.ic_block_black_24dp);
                break;
        }
    }

    private void setText(List<HttpCookie> cookieList, boolean hasNewUrl, String newUrl) {
        String sb = String.format("Cookie:%s\n", cookieList.toString()) + String.format("HasNewUrl:%s\n", hasNewUrl) + String.format("NewUrl:%s\n", hasNewUrl ? newUrl : "default");
        mResultTextView.setText(sb);
    }

    private void setText(String msg) {
        mResultTextView.setText(msg);
    }

    /**
     * 根据sp获取历史输入
     *
     * @return
     */
    public ArrayAdapter<String> getUserIdAdapter() {
        if (mAdapter == null) {
            String ids = SpUtil.getInstance(this).getInputHistory();
            if (!TextUtils.isEmpty(ids)) {
                String[] i = ids.split(",");
                mAdapter = new ArrayAdapter<String>(this, R.layout.item_userid, i);
            } else {
                mAdapter = new ArrayAdapter<String>(this, R.layout.item_userid, new String[] {});
            }
            return mAdapter;
        }
        return mAdapter;
    }

    /**
     * 添加到历史输入
     *
     * @param str
     */
    public void addInputHistory(String str) {
        String ids = SpUtil.getInstance(this).getInputHistory();
        if (TextUtils.isEmpty(ids)) {
            ids = str;
            mAdapter.add(ids);
        } else {
            List<String> idListTmp = Arrays.asList(ids.split(","));
            List<String> idList = new ArrayList<>(idListTmp);
            if (idList.contains(str)) {
                return;
            }
            if (idList.size() > 3) {
                idList.remove(idList.size() - 1);
            }
            idList.add(0, str);
            mAdapter.clear();
            mAdapter.addAll(idList);
            StringBuilder sb = new StringBuilder();
            int size = idList.size();
            for (int i = 0; i < size; i++) {
                if (i < size - 1) {
                    sb.append(idList.get(i));
                    sb.append(",");
                } else {
                    sb.append(idList.get(i));
                }
            }
            ids = sb.toString();
        }
        mAdapter.notifyDataSetChanged();
        SpUtil.getInstance(this).setInputHistory(ids);
    }
}

19 Source : MainActivity.java
with Apache License 2.0
from zhangYanGitHub

public clreplaced MainActivity extends NettyActivity {

    private EditText etContent;

    private Button btn;

    private ListView listView;

    private ArrayList<String> contentList;

    private Gson gson;

    private ArrayAdapter<String> adapter;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final Intent intent = new Intent(getApplication(), NettyService.clreplaced);
        startService(intent);
        etContent = findViewById(R.id.et_content);
        listView = findViewById(R.id.list_view);
        btn = findViewById(R.id.btn);
        btn.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                sendMessage();
            }
        });
        contentList = new ArrayList<>();
        adapter = new ArrayAdapter<String>(this, R.layout.item_text_view, R.id.tv_content, contentList);
        listView.setAdapter(adapter);
        gson = new Gson();
    }

    private void sendMessage() {
        final String message = etContent.getText().toString();
        if (TextUtils.isEmpty(message)) {
            return;
        }
        final NettyBaseFeed<ChatInfo> baseFeed = new NettyBaseFeed<>();
        baseFeed.setModule(1);
        baseFeed.setCmd(2);
        final ChatInfo chatInfo = new ChatInfo();
        baseFeed.setData(chatInfo);
        chatInfo.setChatType(2);
        chatInfo.setFrom(1);
        chatInfo.setTo(50);
        chatInfo.setMsgType(1);
        chatInfo.setMessage(message);
        NettyClient.getInstance().sendMessage(baseFeed, null);
        notifyData(gson.toJson(baseFeed));
        etContent.setText(null);
    }

    protected void notifyData(String json) {
        if (TextUtils.isEmpty(json)) {
            return;
        }
        contentList.add(json);
        adapter.notifyDataSetChanged();
        listView.setSelection(adapter.getCount() - 1);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
    }
}

19 Source : DeviceListActivity.java
with GNU General Public License v3.0
from zeevy

public clreplaced DeviceListActivity extends Activity {

    static {
        AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
    }

    public static final String EXTRA_DEVICE_ADDRESS = "device_address";

    private BluetoothAdapter mBtAdapter;

    private ArrayAdapter<String> mNewDevicesArrayAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mBtAdapter = BluetoothAdapter.getDefaultAdapter();
        if (mBtAdapter == null) {
            EventBus.getDefault().post(new UiToastEvent(getString(R.string.text_bluetooth_adapter_error), true, true));
            finish();
        }
        requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
        requestWindowFeature(Window.FEATURE_NO_replacedLE);
        setContentView(R.layout.activity_device_list);
        setResult(Activity.RESULT_CANCELED);
        ArrayAdapter<String> pairedDevicesArrayAdapter = new ArrayAdapter<>(this, R.layout.device_name);
        mNewDevicesArrayAdapter = new ArrayAdapter<>(this, R.layout.device_name);
        ListView pairedListView = findViewById(R.id.paired_devices);
        pairedListView.setAdapter(pairedDevicesArrayAdapter);
        pairedListView.setOnItemClickListener(mDeviceClickListener);
        IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
        this.registerReceiver(mReceiver, filter);
        filter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
        this.registerReceiver(mReceiver, filter);
        Set<BluetoothDevice> pairedDevices = Collections.emptySet();
        try {
            pairedDevices = mBtAdapter.getBondedDevices();
        } catch (Exception e) {
            EventBus.getDefault().post(new UiToastEvent(getString(R.string.text_bluetooth_adaptor_error), true, true));
            finish();
        }
        if (pairedDevices.size() > 0) {
            for (BluetoothDevice device : pairedDevices) {
                pairedDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        } else {
            pairedDevicesArrayAdapter.add(getString(R.string.text_no_paired_devices));
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (mBtAdapter != null) {
            mBtAdapter.cancelDiscovery();
        }
        this.unregisterReceiver(mReceiver);
    }

    private final AdapterView.OnItemClickListener mDeviceClickListener = new AdapterView.OnItemClickListener() {

        public void onItemClick(AdapterView<?> av, View v, int arg2, long arg3) {
            mBtAdapter.cancelDiscovery();
            String info = ((TextView) v).getText().toString();
            if (info.length() > 16) {
                String address = info.substring(info.length() - 17);
                Intent intent = new Intent();
                intent.putExtra(EXTRA_DEVICE_ADDRESS, address);
                setResult(Activity.RESULT_OK, intent);
                finish();
            }
        }
    };

    private final BroadcastReceiver mReceiver = new BroadcastReceiver() {

        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            if (BluetoothDevice.ACTION_FOUND.equals(action)) {
                BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
                if (device.getBondState() != BluetoothDevice.BOND_BONDED) {
                    mNewDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress());
                }
            } else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) {
                setProgressBarIndeterminateVisibility(false);
                setreplacedle(getString(R.string.text_select_paired_device));
                if (mNewDevicesArrayAdapter.getCount() == 0) {
                    mNewDevicesArrayAdapter.add(getString(R.string.text_none_found));
                }
            }
        }
    };
}

19 Source : DragListener.java
with Apache License 2.0
from yuchuangu85

@Override
public boolean onDrag(View v, DragEvent event) {
    switch(event.getAction()) {
        case DragEvent.ACTION_DRAG_STARTED:
            {
                break;
            }
        case DragEvent.ACTION_DRAG_LOCATION:
            {
                if (mStatePanelTrack.getCurrentView() != null) {
                    setState(event);
                    View over = mStatePanelTrack.findChildAt((int) event.getX(), (int) event.getY());
                    if (over != null && over != mStatePanelTrack.getCurrentView()) {
                        StateView stateView = (StateView) over;
                        if (stateView != mStatePanelTrack.getCurrentView()) {
                            int pos = mStatePanelTrack.findChild(over);
                            int origin = mStatePanelTrack.findChild(mStatePanelTrack.getCurrentView());
                            ArrayAdapter array = (ArrayAdapter) mStatePanelTrack.getAdapter();
                            if (origin != -1 && pos != -1) {
                                State current = (State) array.gereplacedem(origin);
                                array.remove(current);
                                array.insert(current, pos);
                                mStatePanelTrack.fillContent(false);
                                mStatePanelTrack.setCurrentView(mStatePanelTrack.getChildAt(pos));
                            }
                        }
                    }
                }
                break;
            }
        case DragEvent.ACTION_DRAG_ENTERED:
            {
                mStatePanelTrack.setExited(false);
                if (mStatePanelTrack.getCurrentView() != null) {
                    mStatePanelTrack.getCurrentView().setVisibility(View.VISIBLE);
                }
                return true;
            }
        case DragEvent.ACTION_DRAG_EXITED:
            {
                if (mStatePanelTrack.getCurrentView() != null) {
                    setState(event);
                    mStatePanelTrack.getCurrentView().setVisibility(View.INVISIBLE);
                }
                mStatePanelTrack.setExited(true);
                break;
            }
        case DragEvent.ACTION_DROP:
            {
                break;
            }
        case DragEvent.ACTION_DRAG_ENDED:
            {
                if (mStatePanelTrack.getCurrentView() != null && mStatePanelTrack.getCurrentView().getAlpha() > sSlope) {
                    setState(event);
                }
                mStatePanelTrack.checkEndState();
                break;
            }
        default:
            break;
    }
    return true;
}

19 Source : Action.java
with Apache License 2.0
from yuchuangu85

public void setAdapter(ArrayAdapter adapter) {
    mAdapter = adapter;
}

19 Source : FaXianFragment.java
with Apache License 2.0
from Yuanhongliang

/**
 * 发现Fragment
 * Created by Administrator on 2016/10/18.
 */
public clreplaced FaXianFragment extends BaseFragment {

    private static String HISTORY_KEY = "history";

    private View v;

    private EditText et;

    private TextView tv;

    private GridView gv;

    private List<String> histories = new ArrayList<>();

    private ArrayAdapter<String> adapter;

    private Button clear;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        v = inflater.inflate(R.layout.frag_faxian, null);
        initView();
        getHistory();
        return v;
    }

    /**
     * 获取搜索历史
     */
    private void getHistory() {
        List<String> data = SharedPreUtil.getList(getActivity(), "history");
        if (data != null) {
            histories.addAll(data);
        }
    }

    @Override
    public void initView() {
        clear = findButById(v, R.id.frag_fa_clear);
        et = findEtbyId(v, R.id.frag_fa_et);
        tv = findTextViewbyId(v, R.id.frag_fa_tv);
        gv = (GridView) v.findViewById(R.id.frag_fa_gv);
        /**
         * 清空历史
         */
        clear.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                if (histories == null || histories.size() == 0) {
                    Toast.makeText(getActivity(), "暂无搜索历史", Toast.LENGTH_SHORT).show();
                    return;
                }
                SharedPreUtil.clearHistory(getActivity());
                histories.clear();
                adapter.notifyDataSetChanged();
            }
        });
        /**
         * 搜索事件
         */
        et.setOnEditorActionListener(new TextView.OnEditorActionListener() {

            @Override
            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
                if (!HttpUtil.isNetworkAvailable(getActivity())) {
                    showToast("当前网络不可用");
                    return false;
                }
                if (actionId == EditorInfo.IME_ACTION_SEARCH) {
                    String searchStr = et.getText().toString().trim();
                    search(searchStr);
                }
                return false;
            }
        });
        /**
         * 长句翻译
         */
        tv.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                startActivity(new Intent(getActivity(), SentenceTranslateActivity.clreplaced));
            }
        });
        adapter = new ArrayAdapter<>(getActivity(), R.layout.text_his, histories);
        gv.setAdapter(adapter);
        gv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                search(histories.get(position));
            }
        });
    }

    private void search(String searchStr) {
        if (searchStr.equals("")) {
            showToast("请输入文本");
            return;
        }
        if (searchStr.contains(" ")) {
            showToast("搜索词中不允许空格哦~");
            return;
        }
        if (histories.contains(searchStr)) {
            histories.remove(searchStr);
            histories.add(searchStr);
        } else {
            histories.add(searchStr);
        }
        adapter.notifyDataSetChanged();
        SharedPreUtil.saveHistory(getActivity(), HISTORY_KEY, histories);
        ((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(et.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
        et.setText("");
        Intent intent = new Intent();
        intent.putExtra("searchStr", searchStr);
        int length = (searchStr.charAt(0) + "").getBytes().length;
        if (length == 1) {
            intent.setClreplaced(getActivity(), EnglishSearchActivity.clreplaced);
        } else if (length == 3) {
            intent.setClreplaced(getActivity(), ChineseSearchActivity.clreplaced);
        }
        startActivity(intent);
    }
}

19 Source : ChineseSearchActivity.java
with Apache License 2.0
from Yuanhongliang

/**
 * 搜索中文的结果页
 * Created by Administrator on 2016/10/19.
 */
public clreplaced ChineseSearchActivity extends BaseActivity {

    private String searchStr;

    private TextView name, duyin;

    private ImageView voice;

    private ListView lv;

    private List<String> meanings;

    private ArrayAdapter<String> adapter;

    private MediaPlayer mp;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_chinese_search);
        searchStr = getIntent().getStringExtra("searchStr");
        initView();
        HttpMethods.getInstance().searchChinese(searchStr).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Action1<ChineseBean>() {

            @Override
            public void call(final ChineseBean chineseBean) {
                name.setText(chineseBean.getWord_name());
                String duyinStr = chineseBean.getSymbols().get(0).getWord_symbol();
                if (duyinStr != null && !duyinStr.equals("")) {
                    duyin.setText(duyinStr);
                } else {
                    duyin.setVisibility(View.GONE);
                    voice.setVisibility(View.GONE);
                }
                if (chineseBean.getSymbols().get(0).getParts() != null) {
                    List<Means> means = chineseBean.getSymbols().get(0).getParts().get(0).getMeans();
                    for (Means mean : means) {
                        meanings.add(mean.getWord_mean());
                    }
                } else {
                    showToast("暂无搜索结果");
                }
                adapter.notifyDataSetChanged();
                // 播放音频
                voice.setOnClickListener(new View.OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        if (chineseBean.getSymbols().get(0).getSymbol_mp3() == null || chineseBean.getSymbols().get(0).getSymbol_mp3().equals("")) {
                            showToast("暂无匹配资源");
                            return;
                        }
                        mp.reset();
                        try {
                            mp.setDataSource(chineseBean.getSymbols().get(0).getSymbol_mp3());
                        } catch (IOException e) {
                            e.printStackTrace();
                        }
                        mp.prepareAsync();
                    }
                });
            }
        });
    }

    @Override
    public void initView() {
        name = findTextViewById(R.id.act_chinese_name);
        duyin = findTextViewById(R.id.act_chinese_duyin);
        voice = findImageViewById(R.id.act_chinese_voice);
        lv = (ListView) findViewById(R.id.act_chinese_lv);
        meanings = new ArrayList<>();
        adapter = new ArrayAdapter<>(this, R.layout.text_history, meanings);
        lv.setAdapter(adapter);
        mp = new MediaPlayer();
        mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {

            @Override
            public void onPrepared(MediaPlayer mp) {
                mp.start();
            }
        });
        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                Intent intent = new Intent(ChineseSearchActivity.this, EnglishSearchActivity.clreplaced);
                intent.putExtra("searchStr", meanings.get(position));
                startActivity(intent);
            }
        });
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (mp.isPlaying()) {
            mp.stop();
        }
        mp.release();
    }
}

19 Source : AbstractModelManager.java
with Apache License 2.0
from YoshiOne

private static ArrayAdapter<String> createTreeArrayAdapter(Activity activity, List<BaseNode> nodes) {
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(activity, android.R.layout.simple_list_item_1);
    for (BaseNode node : nodes) {
        String prefix = "";
        for (int i = 0; i < node.getLevel() - 2; i++) {
            prefix = prefix + "\t\t";
        }
        if (!prefix.isEmpty()) {
            if (node.isLastChildren()) {
                prefix = prefix + "└ ";
            } else {
                prefix = prefix + "├ ";
            }
        }
        arrayAdapter.add(prefix + node.getModel().getName());
    }
    return arrayAdapter;
}

19 Source : ActivityShortcut.java
with Apache License 2.0
from YoshiOne

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    AlertDialog.Builder builderSingle = new AlertDialog.Builder(this);
    final ArrayAdapter<Template> arrayAdapterTemplates = new ArrayAdapter<>(this, android.R.layout.select_dialog_singlechoice);
    List<Template> templates;
    try {
        templates = TemplatesDAO.getInstance(this).getAllTemplates();
    } catch (Exception e) {
        templates = new ArrayList<>();
    }
    arrayAdapterTemplates.addAll(templates);
    builderSingle.setSingleChoiceItems(arrayAdapterTemplates, -1, new DialogInterface.OnClickListener() {

        @Override
        public void onClick(final DialogInterface dialog, final int which) {
            ListView lw = ((AlertDialog) dialog).getListView();
            Template template = (Template) lw.getAdapter().gereplacedem(which);
            final Intent shortcutIntent = new Intent(getApplicationContext(), ActivityEditTransaction.clreplaced);
            shortcutIntent.putExtra("template_name", template.getName());
            shortcutIntent.putExtra("EXIT", true);
            int icon = R.drawable.ic_main;
            switch(template.getTrType()) {
                case Transaction.TRANSACTION_TYPE_INCOME:
                    icon = R.mipmap.ic_template_income;
                    break;
                case Transaction.TRANSACTION_TYPE_EXPENSE:
                    icon = R.mipmap.ic_template_expense;
                    break;
                case Transaction.TRANSACTION_TYPE_TRANSFER:
                    icon = R.mipmap.ic_template_transfer;
                    break;
            }
            final Intent.ShortcutIconResource iconResource = Intent.ShortcutIconResource.fromContext(getApplicationContext(), icon);
            final Intent intent = new Intent();
            intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, template.getName());
            intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource);
            setResult(RESULT_OK, intent);
            dialog.dismiss();
            finish();
        }
    });
    builderSingle.setreplacedle(getString(R.string.ttl_select_template));
    builderSingle.setNegativeButton(getResources().getString(android.R.string.cancel), new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
            finish();
        }
    });
    builderSingle.setOnCancelListener(new DialogInterface.OnCancelListener() {

        @Override
        public void onCancel(DialogInterface dialogInterface) {
            finish();
        }
    });
    builderSingle.show();
}

19 Source : MainActivity.java
with MIT License
from yohhoy

public clreplaced MainActivity extends Activity {

    private static final String TAG = "MainActivity";

    private static final String URL_BASE = "https://github.com/nokiatech/heif/raw/gh-pages/content/images/";

    // private static final String URL_BASE = "https://github.com/nokiatech/heif/raw/ce04febfbf6f9aba9df635d6bcfbf3f447f9af2c/content/images/";
    private static final String[] URL_IMAGES = { // internal resource
    "lena [local]", "autumn_1440x960.heic", "cheers_1440x960.heic", "crowd_1440x960.heic", "old_bridge_1440x960.heic", "random_collection_1440x960.heic", "season_collection_1440x960.heic", "ski_jump_1440x960.heic", "spring_1440x960.heic", "summer_1440x960.heic", "surfer_1440x960.heic", "winter_1440x960.heic" };

    ListView mListView;

    ArrayAdapter<String> mArrayAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mListView = findViewById(R.id.file_list);
        mArrayAdapter = new ArrayAdapter<>(this, R.layout.listrow, URL_IMAGES);
        mListView.setAdapter(mArrayAdapter);
        mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                final Context context = MainActivity.this;
                if (position == 0) {
                    // show internal resource
                    Bitmap bitmap = HeifReader.decodeResource(context.getResources(), R.raw.lena_std);
                    showImage(bitmap);
                    return;
                }
                String imageName = URL_IMAGES[position];
                final ProgressDialog progress = ProgressDialog.show(context, imageName, "", true, false);
                new AsyncTask<String, Void, Bitmap>() {

                    @Override
                    protected Bitmap doInBackground(String... strings) {
                        try {
                            return HeifReader.decodeStream(new URL(strings[0]).openStream());
                        } catch (IOException ex) {
                            Log.e(TAG, "invalid URL", ex);
                            return null;
                        }
                    }

                    @Override
                    protected void onPostExecute(Bitmap result) {
                        progress.dismiss();
                        showImage(result);
                    }
                }.execute(URL_BASE + imageName);
            }
        });
        // initialize HefiReader module
        HeifReader.initialize(this);
    }

    private void showImage(Bitmap bitmap) {
        Dialog builder = new Dialog(this);
        builder.requestWindowFeature(Window.FEATURE_NO_replacedLE);
        builder.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
        ImageView imageView = new ImageView(this);
        if (bitmap != null) {
            imageView.setImageBitmap(bitmap);
        } else {
            // fallback image
            imageView.setImageResource(android.R.drawable.ic_delete);
        }
        builder.addContentView(imageView, new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
        builder.show();
    }
}

19 Source : MainActivity.java
with Apache License 2.0
from yangwencan2002

private void initListView() {
    ListView listView = (ListView) findViewById(R.id.listView);
    ArrayAdapter arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, android.R.id.text1, getDataList());
    listView.setAdapter(arrayAdapter);
    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
            DataItem item = (DataItem) adapterView.gereplacedemAtPosition(position);
            startActivity(new Intent(MainActivity.this, item.activityClreplaced));
        }
    });
}

19 Source : Login.java
with Boost Software License 1.0
from YahyaOdeh

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    // Checking for camera
    if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.CAMERA }, 1);
    }
    Log = findViewById(R.id.Login);
    ed1 = findViewById(R.id.edth);
    ed2 = findViewById(R.id.edtw);
    ed3 = findViewById(R.id.edtn);
    ed4 = findViewById(R.id.edta);
    ed5 = findViewById(R.id.edtu);
    ed6 = findViewById(R.id.edtp);
    ed7 = findViewById(R.id.edtpc);
    ed8 = findViewById(R.id.edte);
    GenderSpin = findViewById(R.id.SGender);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.Gender, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    GenderSpin.setAdapter(adapter);
    Log.setOnClickListener(v -> {
        check1 = 0;
        heightStr = ed1.getText().toString();
        weightStr = ed2.getText().toString();
        nameStr = ed3.getText().toString();
        ageStr = ed4.getText().toString();
        usrStrlow = ed5.getText().toString();
        preplacedStr = ed6.getText().toString();
        preplacedConStr = ed7.getText().toString();
        emailStr = ed8.getText().toString();
        usrStr = usrStrlow.toLowerCase();
        // Email Validation
        String emailInput = emailStr;
        if (emailInput.isEmpty()) {
            check1 = 1;
            ed8.setError("Field can't be empty");
        } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {
            if (!Patterns.EMAIL_ADDRESS.matcher(emailInput).matches()) {
                check1 = 1;
                ed8.setError("Please enter a valid email address");
            } else {
                check1 = 0;
                ed8.setError(null);
            }
        }
        // Username Validation
        if (usrStr.isEmpty()) {
            ed5.setError("Field can't be empty");
            check1 = 1;
        } else if (usrStr.length() > 15) {
            ed5.setError("Username too long");
            check1 = 1;
        } else {
            ed5.setError(null);
            check1 = 0;
        }
        // will check if username exists will return 0 otherwise it will be 1
        c = check.checkUser(usrStr);
        if (c == y) {
            check1 = 1;
            mainToast = Toast.makeText(getApplicationContext(), "Username already exist", Toast.LENGTH_SHORT);
            mainToast.show();
        }
        // Preplacedword Validation
        if (preplacedStr.isEmpty()) {
            check1 = 1;
            ed6.setError("Field can't be empty");
        } else if (!PreplacedWORD_PATTERN.matcher(preplacedStr).matches()) {
            check1 = 1;
            ed6.setError("Preplacedword too weak: must contain\nUppercase characters (A-Z)\n" + "Lowercase characters (a-z)\n" + "Digits (0-9)\n" + "Special characters (~!@#$%&*_:;'.?/)");
        } else {
            check1 = 0;
            ed6.setError(null);
        }
        if (!(preplacedStr.equals(preplacedConStr))) {
            check1 = 1;
            mainToast = Toast.makeText(getApplicationContext(), "Preplacedword don't match !", Toast.LENGTH_SHORT);
            mainToast.show();
        }
        // Checking other Inputs
        if (ageStr.isEmpty() || nameStr.isEmpty() || heightStr.isEmpty() || weightStr.isEmpty() || preplacedStr.isEmpty() || preplacedConStr.isEmpty() || emailStr.isEmpty() || usrStr.isEmpty()) {
            check1 = 1;
            mainToast = Toast.makeText(getApplicationContext(), "Please fill all your data ", Toast.LENGTH_SHORT);
            mainToast.show();
        } else if (check1 == 0) {
            check1 = 0;
            age = Integer.parseInt(ageStr);
            weight = Integer.parseInt(weightStr);
            height = Integer.parseInt(heightStr);
            String text = GenderSpin.getSelectedItem().toString();
            int k = 0;
            if (// If gender is male K = 1
            text.equals(m1))
                k = 1;
            if (// If gender is female K = 2
            text.equals(m2))
                k = 2;
            user per = new user();
            per.setUsername(usrStr);
            per.setname(nameStr);
            per.setage(age);
            per.setemail(emailStr);
            per.setPreplaced(preplacedStr);
            per.setheight(height);
            per.setweight(weight);
            per.setgender(k);
            Data.addUser(per);
            Intent i = new Intent(v.getContext(), First.clreplaced);
            mainToast = Toast.makeText(getApplicationContext(), "Your account has been created", Toast.LENGTH_SHORT);
            mainToast.show();
            startActivity(i);
            finish();
        }
    });
}

19 Source : Fragment1.java
with Apache License 2.0
from YablokovDmitry

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.fragment1, container, false);
    listView = rootView.findViewById(R.id.list);
    String[] values = new String[] { "Android List Item 0", "Android List Item 1", "Android List Item 2", "Android List Item 3", "Android List Item 4", "Android List Item 5", "Android List Item 6", "Android List Item 7" };
    ArrayAdapter<String> adapter = new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, android.R.id.text1, values);
    listView.setAdapter(adapter);
    return rootView;
}

19 Source : OC_SimpleListMenu.java
with Apache License 2.0
from XPRIZE

/**
 * Created by alan on 11/12/17.
 */
public clreplaced OC_SimpleListMenu extends OBSectionController {

    private ListView listView;

    List<MlUnit> masterList;

    List<MlUnit> filteredList;

    ArrayAdapter<MlUnit> arrayAdapter;

    private MasterlistFilter masterlistFilter = new MasterlistFilter();

    List<String> checkedList;

    String currentBuild;

    public OC_SimpleListMenu() {
        super(MainActivity.mainActivity, false);
    }

    public void initScreen() {
        checkedList = new ArrayList<>();
        MainActivity.mainActivity.setContentView(R.layout.simple_list_menu);
        listView = (ListView) MainActivity.mainActivity.findViewById(R.id.OB_simplelistview);
        listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
        listView.setSelector(android.R.color.darker_gray);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                hideKeyboard();
                MlUnit m = (MlUnit) parent.gereplacedemAtPosition(position);
                setStatus(STATUS_BUSY);
                String configName = m.config;
                // 
                String unitUUID = "????";
                String keys = m.key;
                if (keys != null) {
                    String[] array = keys.split("\\.");
                    if (array.length > 1) {
                        unitUUID = array[0];
                    }
                }
                // 
                OBSystemsManager.sharedManager.setCurrentUnit(unitUUID);
                // 
                if (configName == null) {
                    String appDir = OBConfigManager.sharedManager.getCurrentActivityFolder();
                    String[] comps = appDir.split("/");
                    configName = comps[0];
                } else {
                    OBConfigManager.sharedManager.updateConfigPaths(configName, false, m.lang);
                }
                try {
                    checkedList.add(m.key);
                    arrayAdapter.notifyDataSetChanged();
                    if (MainActivity.mainViewController.pushViewControllerWithNameConfig(m.target, configName, true, true, m.params)) {
                    } else {
                        Toast.makeText(MainActivity.mainActivity, m.target + " hasn't been converted to Android yet.", Toast.LENGTH_LONG).show();
                    }
                } catch (Exception e) {
                    Toast.makeText(MainActivity.mainActivity, m.target + " error opening!", Toast.LENGTH_LONG).show();
                    e.printStackTrace();
                }
                setStatus(STATUS_IDLE);
            }
        });
        listView.setLongClickable(true);
        listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                hideKeyboard();
                MlUnit m = (MlUnit) parent.gereplacedemAtPosition(position);
                setStatus(STATUS_BUSY);
                askForUnitReport(m);
                setStatus(STATUS_IDLE);
                return true;
            }
        });
        listView.setOnTouchListener(new View.OnTouchListener() {

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                hideKeyboard();
                return false;
            }
        });
        filteredList = new ArrayList<>(masterList);
        // 
        TextView buildNumber = (TextView) MainActivity.mainActivity.findViewById(R.id.buildNumber);
        if (buildNumber != null) {
            String buildNumberValue = OBConfigManager.sharedManager.getBuildNumber();
            if (buildNumberValue == null) {
                buildNumberValue = "Missing BuildNo";
            }
            buildNumber.setText(buildNumberValue);
            currentBuild = buildNumberValue;
        }
        // 
        LinearLayout topBar = (LinearLayout) MainActivity.mainActivity.findViewById(R.id.topBar);
        topBar.setBackgroundColor(Color.rgb(255, 165, 0));
        // 
        arrayAdapter = new ArrayAdapter<MlUnit>(MainActivity.mainActivity, android.R.layout.simple_list_item_1, filteredList) {

            @Override
            public View getView(int position, View convertView, ViewGroup parent) {
                MlUnit ml = gereplacedem(position);
                String s = String.format("%s/%s/%s/%s", ml.key, ml.target, ml.params, ml.config);
                TextView view = (TextView) super.getView(position, convertView, parent);
                // Get the Layout Parameters for ListView Current Item View
                ViewGroup.LayoutParams params = view.getLayoutParams();
                // Set the height of the Item View
                params.height = 175;
                view.setText(s);
                if (checkedList.contains(ml.key))
                    view.setTextColor(Color.RED);
                else
                    view.setTextColor(Color.BLACK);
                return view;
            }

            @Override
            public Filter getFilter() {
                return masterlistFilter;
            }
        };
        listView.setAdapter(arrayAdapter);
        final EditText filterText = (EditText) MainActivity.mainActivity.findViewById(R.id.filterText);
        if (filterText != null) {
            filterText.addTextChangedListener(new Texreplacedcher() {

                @Override
                public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                }

                @Override
                public void onTextChanged(CharSequence s, int start, int before, int count) {
                }

                @Override
                public void afterTextChanged(Editable s) {
                    String text = filterText.getText().toString().toLowerCase();
                    masterlistFilter.filter(text);
                }
            });
            final EditText positionText = (EditText) MainActivity.mainActivity.findViewById(R.id.positionText);
            if (positionText != null) {
                positionText.addTextChangedListener(new Texreplacedcher() {

                    @Override
                    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                    }

                    @Override
                    public void onTextChanged(CharSequence s, int start, int before, int count) {
                    }

                    @Override
                    public void afterTextChanged(Editable s) {
                        String text = positionText.getText().toString().toLowerCase();
                        int position = -1;
                        for (int i = 0; i < arrayAdapter.getCount(); i++) {
                            MlUnit ml = arrayAdapter.gereplacedem(i);
                            if (ml.key.toLowerCase().contains(text.toString().toLowerCase())) {
                                position = i;
                                break;
                            }
                        }
                        if (position > -1) {
                            listView.setSelectionFromTop(position, 0);
                        }
                    }
                });
            }
        }
    }

    List<MlUnit> loadUnitXML(String xmlPath) {
        List<MlUnit> arr = new ArrayList<>();
        if (xmlPath != null) {
            OBXMLManager xmlManager = new OBXMLManager();
            OBXMLNode xmlNode = null;
            try {
                List<OBXMLNode> xl = xmlManager.parseFile(OBUtils.getInputStreamForPath(xmlPath));
                xmlNode = xl.get(0);
                for (OBXMLNode xmlLevel : xmlNode.childrenOfType("level")) {
                    List<OBXMLNode> xmlunits = xmlLevel.childrenOfType("unit");
                    for (OBXMLNode n : xmlunits) {
                        MlUnit m = MlUnit.mlUnitFromXMLNode(n);
                        m.key = n.attributeStringValue("id");
                        arr.add(m);
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return arr;
    }

    void loadUnits() {
        String mlname = OBConfigManager.sharedManager.getMasterlist();
        masterList = loadUnitXML(String.format("masterlists/%s/units.xml", mlname));
    }

    public void prepare() {
        setStatus(STATUS_IDLE);
        loadUnits();
        initScreen();
    }

    public void askForUnitReport(final MlUnit unit) {
        final AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.mainActivity);
        alert.setreplacedle("Unit Report");
        alert.setMessage("Do you want to report unit " + unit.key + " ?");
        alert.setPositiveButton("YES", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                prepareBugReportForUnit(unit);
            }
        });
        alert.setNegativeButton("NO", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.cancel();
            }
        });
        final AlertDialog dialog = alert.show();
        OBUtils.runOnOtherThreadDelayed(10, new OBUtils.RunLambda() {

            @Override
            public void run() throws Exception {
                if (dialog != null && dialog.isShowing()) {
                    dialog.cancel();
                }
            }
        });
    }

    public void prepareBugReportForUnit(MlUnit unit) {
        try {
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.append("https://github.com/onebillionchildren/XPRIZE-ob-android/issues/new?");
            stringBuilder.append("replacedle=" + URLEncoder.encode("Build " + currentBuild + " - " + unit.key + " - TYPE ISSUE HERE", "UTF-8"));
            stringBuilder.append("&body=%23%23%23%23%23%20Component%0D%0Akey%20%3D%20" + URLEncoder.encode(unit.key, "UTF-8") + "%0D%0Atarget%20%3D%20" + URLEncoder.encode(unit.target, "UTF-8") + "%0D%0Aconfig%20%3D%20" + URLEncoder.encode(unit.config, "UTF-8") + "%0D%0Aparams%20%3D%20" + URLEncoder.encode(unit.params, "UTF-8") + "%0D%0A%23%23%23%23%23%20Description%0D%0ADescribe%20the%20issue%20clearly%2C%20with%20steps%20to%20reproduce.%0D%0AAttach%20a%20screenshot%20if%20applicable.%0D%0A%23%23%23%23%23%20Severity%0D%0A-%20%5B%20%5D%20Low%0D%0A-%20%5B%20%5D%20Medium%0D%0A-%20%5B%20%5D%20High%0D%0A");
            stringBuilder.append("&replacedignee=KaMpErTuGa");
            stringBuilder.append("&milestone=onecourse+-+upload+3");
            Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(stringBuilder.toString()));
            MainActivity.mainActivity.startActivity(browserIntent);
        } catch (Exception e) {
        }
    }

    public void hideKeyboard() {
        View view = MainActivity.mainActivity.getCurrentFocus();
        if (view != null) {
            InputMethodManager imm = (InputMethodManager) MainActivity.mainActivity.getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
        }
    }

    private clreplaced MasterlistFilter extends Filter {

        @Override
        protected FilterResults performFiltering(CharSequence constraint) {
            final ArrayList<MlUnit> resultList = new ArrayList<>(masterList.size());
            for (int i = 0; i < masterList.size(); i++) {
                if (masterList.get(i).key.toLowerCase().contains(constraint.toString().toLowerCase()) || masterList.get(i).params.toLowerCase().contains(constraint.toString().toLowerCase()) || masterList.get(i).target.toLowerCase().contains(constraint.toString().toLowerCase())) {
                    resultList.add(masterList.get(i));
                }
            }
            FilterResults results = new FilterResults();
            results.values = resultList;
            results.count = resultList.size();
            return results;
        }

        @Override
        protected void publishResults(CharSequence constraint, FilterResults results) {
            filteredList = (ArrayList<MlUnit>) results.values;
            arrayAdapter.clear();
            for (int i = 0, l = filteredList.size(); i < l; i++) arrayAdapter.add(filteredList.get(i));
            listView.clearChoices();
            arrayAdapter.notifyDataSetChanged();
        }
    }
}

19 Source : SFragment.java
with MIT License
from ximsfei

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_middle, null);
    mHorizontalBar = (ProgressBar) view.findViewById(R.id.progress_horizontal);
    mAdd = (Button) view.findViewById(R.id.add);
    mAdd.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            mHorizontalBar.setProgress(mHorizontalBar.getProgress() + 2);
        }
    });
    mSpinner = (Spinner) view.findViewById(R.id.spinner);
    final CharSequence[] entries = getResources().getStringArray(R.array.languages);
    if (entries != null) {
        final ArrayAdapter<CharSequence> adapter = new ArrayAdapter<>(getActivity(), R.layout.simple_spinner_item, entries);
        adapter.setDropDownViewResource(R.layout.simple_spinner_item);
        mSpinner.setAdapter(adapter);
    }
    return view;
}

19 Source : ListViewActivity.java
with Apache License 2.0
from xiaohaibin

/**
 * 设置适配器
 */
private void setAdapter() {
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.transforms));
    mLv.setAdapter(adapter);
    mLv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            switch(position) {
                // 默认切换动画
                case 0:
                    mXBanner.setPageTransformer(Transformer.Default);
                    break;
                case 1:
                    mXBanner.setPageTransformer(Transformer.Alpha);
                    break;
                case 2:
                    mXBanner.setPageTransformer(Transformer.Rotate);
                    break;
                case 3:
                    mXBanner.setPageTransformer(Transformer.Cube);
                    break;
                case 4:
                    mXBanner.setPageTransformer(Transformer.Flip);
                    break;
                case 5:
                    mXBanner.setPageTransformer(Transformer.Accordion);
                    break;
                case 6:
                    mXBanner.setPageTransformer(Transformer.ZoomFade);
                    break;
                case 7:
                    mXBanner.setPageTransformer(Transformer.ZoomCenter);
                    break;
                case 8:
                    mXBanner.setPageTransformer(Transformer.ZoomStack);
                    break;
                case 9:
                    mXBanner.setPageTransformer(Transformer.Stack);
                    break;
                case 10:
                    mXBanner.setPageTransformer(Transformer.Depth);
                    break;
                case 11:
                    mXBanner.setPageTransformer(Transformer.Zoom);
                    break;
                default:
                    mXBanner.setPageTransformer(Transformer.Default);
                    break;
            }
        }
    });
}

19 Source : SearchActivity.java
with Apache License 2.0
from xfhy

/**
 * 搜索界面
 *
 * @author xfhy
 *         create at 2017年6月19日21:53:48
 */
public clreplaced SearchActivity extends BaseActivity implements View.OnClickListener, TextView.OnEditorActionListener, Texreplacedcher {

    private static final String TAG = "SearchActivity";

    private TextView mCancel;

    private EditText mEdit;

    private Button mClearHistroy;

    private ImageView mClearInput;

    private ArrayAdapter<String> mAdapter;

    private static final int HISTROY_INPUT_COUNT = 5;

    private ListView mHistroyList;

    private String mHistoryText;

    @Override
    protected int getLayoutId() {
        return R.layout.activity_search;
    }

    @Override
    protected void initView() {
        mCancel = (TextView) findViewById(R.id.tv_cancel);
        mEdit = (EditText) findViewById(R.id.et_search_edit);
        mClearInput = (ImageView) findViewById(R.id.tv_search_input_clear);
        mClearHistroy = (Button) findViewById(R.id.btn_clear_histroy);
        mHistroyList = (ListView) findViewById(R.id.lv_histroy_input);
        // 取消
        mCancel.setOnClickListener(this);
        mClearHistroy.setOnClickListener(this);
        mClearInput.setOnClickListener(this);
        // 设置当enter按下时的监听事件
        mEdit.setOnEditorActionListener(this);
        // 监听EditText文本输入的变化
        mEdit.addTextChangedListener(this);
        // 初始化搜索记录
        initSearchHistroy();
    }

    /**
     * 初始化搜索记录
     */
    private void initSearchHistroy() {
        // 获取搜索记录SP内容
        mHistoryText = SpUtil.getString(this, SEARCH_HISTORY, "");
        if (TextUtils.isEmpty(mHistoryText)) {
            mClearHistroy.setVisibility(View.INVISIBLE);
            return;
        }
        try {
            // 用逗号分割内容返回数组
            String[] historyArr = mHistoryText.split(",");
            // 保留前5条数据
            if (historyArr.length > HISTROY_INPUT_COUNT) {
                String[] newArrays = new String[HISTROY_INPUT_COUNT];
                // 实现数组之间的复制   复制5个
                System.arraycopy(historyArr, 0, newArrays, 0, HISTROY_INPUT_COUNT);
                // 将原来的超过5个的记录除去
                StringBuilder textTemp = new StringBuilder();
                for (int i = 0; i < HISTROY_INPUT_COUNT; i++) {
                    textTemp.append(newArrays[i] + ",");
                }
                mHistoryText = textTemp.toString();
                LogUtil.e(TAG, "initSearchHistroy: 现在mHistoryText的值是" + mHistoryText);
                mAdapter = new ArrayAdapter<>(this, R.layout.item_search_histroy_list, newArrays);
            } else {
                // 新建适配器,适配器数据为搜索历史文件内容
                mAdapter = new ArrayAdapter<>(this, R.layout.item_search_histroy_list, historyArr);
            }
            // 设置适配器
            mHistroyList.setAdapter(mAdapter);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 保存当前搜索的内容
     */
    private void saveSearchText() {
        String input = mEdit.getText().toString();
        if (!TextUtils.isEmpty(input) && !mHistoryText.contains(input)) {
            // 利用StringBuilder.append新增内容,逗号便于读取内容时用逗号拆分开
            StringBuilder textTemp = new StringBuilder(input + ",");
            textTemp.append(mHistoryText);
            mHistoryText = textTemp.toString();
            LogUtil.e(TAG, "保存到SP中的内容是: " + textTemp.toString());
            SpUtil.putString(this, SEARCH_HISTORY, textTemp.toString());
        }
    }

    @Override
    public void onClick(View v) {
        switch(v.getId()) {
            case R.id.tv_cancel:
                finish();
                break;
            case // 清空历史
            R.id.btn_clear_histroy:
                mHistoryText = "";
                // 移除节点
                SpUtil.remove(this, SEARCH_HISTORY);
                // 隐藏列表
                mHistroyList.setVisibility(View.GONE);
                // 隐藏按钮
                mClearHistroy.setVisibility(View.GONE);
                break;
            case // 清空这次的输入
            R.id.tv_search_input_clear:
                mEdit.setText("");
                // 隐藏清空输入的按钮
                mClearInput.setVisibility(View.INVISIBLE);
                break;
        }
    }

    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
            LogUtil.e(TAG, "onEditorAction: 用户按下了回车键");
            if (!TextUtils.isEmpty(mEdit.getText().toString())) {
                // TODO 这里需要做的是搜索
                // 需要保存记录
                saveSearchText();
                // 隐藏软键盘
                InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(mEdit.getWindowToken(), 0);
                // 隐藏ListView,隐藏清空历史记录按钮
                mHistroyList.setVisibility(View.INVISIBLE);
                mClearHistroy.setVisibility(View.INVISIBLE);
            }
            return true;
        }
        return false;
    }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
    }

    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {
    }

    @Override
    public void afterTextChanged(Editable s) {
        String inputText = mEdit.getText().toString();
        LogUtil.e(TAG, "afterTextChanged: 您输入的内容是" + inputText);
        if (TextUtils.isEmpty(inputText)) {
            // 如果输入框为空  则需要隐藏清空文字的按钮
            mClearInput.setVisibility(View.INVISIBLE);
        } else {
            // 需要显示那个清空输入的按钮
            mClearInput.setVisibility(View.VISIBLE);
        }
    }
}

19 Source : ImageHolder.java
with Apache License 2.0
from wutongke

@Override
public void render(BaseItem baseItem) {
    super.render(baseItem);
    ArrayAdapter arrayAdapter = (ArrayAdapter) imageItemBinding.imageGrid.getAdapter();
    if (arrayAdapter == null) {
        arrayAdapter = new ImageAdapter(itemView.getContext(), 0);
    }
    List<String> images = null;
    if (baseItem instanceof HeaderImageCardItem) {
        images = ((HeaderImageCardItem) baseItem).getImages();
    } else if (baseItem instanceof HeaderImageItem) {
        images = ((HeaderImageItem) baseItem).getImages();
    } else if (baseItem instanceof HeaderTextImageViewItem) {
        images = ((HeaderTextImageViewItem) baseItem).getImages();
    }
    arrayAdapter.clear();
    arrayAdapter.addAll(images);
    imageItemBinding.imageGrid.setAdapter(arrayAdapter);
}

19 Source : ArrayDialogFragment.java
with MIT License
from wutongke

/**
 * Created by erfli on 2/26/17.
 */
public clreplaced ArrayDialogFragment extends DialogFragment {

    private ListView animatorChooseListView;

    private List<String> itemList = new ArrayList<>();

    private ArrayAdapter<String> arrayAdapter;

    private AdapterView.OnItemClickListener onItemClickListener;

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.animator_choose_fragment, null);
        animatorChooseListView = (ListView) view.findViewById(R.id.animator_choose_listview);
        arrayAdapter = new ArrayAdapter<>(view.getContext(), R.layout.animator_choose_item);
        arrayAdapter.addAll(itemList);
        animatorChooseListView.setAdapter(arrayAdapter);
        animatorChooseListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (onItemClickListener != null) {
                    onItemClickListener.onItemClick(parent, view, position, id);
                }
                ArrayDialogFragment.this.dismiss();
            }
        });
        return view;
    }

    public void sereplacedemList(@NonNull List itemList) {
        this.itemList.clear();
        this.itemList.addAll(itemList);
    }

    public void setOnItemClickListener(AdapterView.OnItemClickListener onItemClickListener) {
        this.onItemClickListener = onItemClickListener;
    }
}

19 Source : MessMenuFragment.java
with GNU General Public License v3.0
from wncc

/**
 * A simple {@link Fragment} subclreplaced.
 */
public clreplaced MessMenuFragment extends BaseFragment {

    private List<HostelMessMenu> insreplaceduteMessMenu = null;

    private MessMenuAdapter messMenuAdapter;

    private SwipeRefreshLayout messMenuSwipeRefreshLayout;

    private String hostel;

    private Boolean initialized = false;

    List<String> hostels = new ArrayList<>();

    private ArrayAdapter<String> spinnerAdapter;

    public MessMenuFragment() {
    // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_mess_menu, container, false);
    }

    @Override
    public void onStart() {
        super.onStart();
        Toolbar toolbar = getActivity().findViewById(R.id.toolbar);
        toolbar.setreplacedle("Mess Menu");
        Utils.setSelectedMenuItem(getActivity(), R.id.nav_mess_menu);
        setupAdapter();
        hostel = (String) getArguments().get(Constants.USER_HOSTEL);
        messMenuSwipeRefreshLayout = getActivity().findViewById(R.id.mess_menu_swipe_refresh_layout);
        messMenuSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {

            @Override
            public void onRefresh() {
                updateMessMenu(hostel);
            }
        });
        updateMessMenu(null);
    }

    private void displayMenu(final String hostel) {
        if (insreplaceduteMessMenu != null) {
            HostelMessMenu hostelMessMenu = findMessMenu(insreplaceduteMessMenu, hostel);
            if (hostelMessMenu != null)
                displayMessMenu(hostelMessMenu);
        } else {
            updateMessMenu(hostel);
        }
    }

    private void initialize() {
        initialized = true;
        Spinner hostelSpinner = getActivity().findViewById(R.id.hostel_spinner);
        for (HostelMessMenu hmm : insreplaceduteMessMenu) {
            hostels.add(hmm.getName());
        }
        spinnerAdapter = new ArrayAdapter(getContext(), R.layout.hostel_spinner_item, hostels.toArray());
        spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        hostelSpinner.setAdapter(spinnerAdapter);
        hostelSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
                hostel = insreplaceduteMessMenu.get(i).getShortName();
                displayMenu(hostel);
            }

            @Override
            public void onNothingSelected(AdapterView<?> adapterView) {
            }
        });
        for (int i = 0; i < insreplaceduteMessMenu.size(); i++) {
            if (insreplaceduteMessMenu.get(i).getShortName().equals(hostel)) {
                hostelSpinner.setSelection(i);
            }
        }
    }

    private void updateMessMenu(final String hostel) {
        RetrofitInterface retrofitInterface = Utils.getRetrofitInterface();
        retrofitInterface.getInsreplaceduteMessMenu(Utils.getSessionIDHeader()).enqueue(new Callback<List<HostelMessMenu>>() {

            @Override
            public void onResponse(Call<List<HostelMessMenu>> call, Response<List<HostelMessMenu>> response) {
                if (response.isSuccessful()) {
                    if (getActivity() == null || getView() == null || response.body() == null)
                        return;
                    insreplaceduteMessMenu = response.body();
                    if (!initialized) {
                        initialize();
                    } else {
                        displayMenu(hostel);
                    }
                }
                // Server Error
                messMenuSwipeRefreshLayout.setRefreshing(false);
            }

            @Override
            public void onFailure(Call<List<HostelMessMenu>> call, Throwable t) {
                // Network Error
                messMenuSwipeRefreshLayout.setRefreshing(false);
            }
        });
    }

    private HostelMessMenu findMessMenu(List<HostelMessMenu> hostelMessMenus, String hostel) {
        for (HostelMessMenu hostelMessMenu : hostelMessMenus) {
            if (hostelMessMenu.getShortName().equals(hostel)) {
                return hostelMessMenu;
            }
        }
        return null;
    }

    private void displayMessMenu(HostelMessMenu hostelMessMenu) {
        /* Skip if we're already destroyed */
        if (getActivity() == null || getView() == null)
            return;
        final List<MessMenu> sortedMenus = hostelMessMenu.getSortedMessMenus();
        /* Display */
        notifyChange(sortedMenus);
        getActivity().findViewById(R.id.loadingPanel).setVisibility(View.GONE);
    }

    private void setupAdapter() {
        if (messMenuAdapter == null) {
            messMenuAdapter = new MessMenuAdapter(new ArrayList<MessMenu>());
        }
        RecyclerView messMenuRecyclerView = getActivity().findViewById(R.id.mess_menu_recycler_view);
        messMenuRecyclerView.setAdapter(messMenuAdapter);
        messMenuRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
    }

    private void notifyChange(final List<MessMenu> menus) {
        messMenuAdapter.setMenu(menus);
        messMenuAdapter.notifyDataSetChanged();
    }
}

19 Source : MainActivity.java
with Apache License 2.0
from WhatsApp

private void setupLanguageSelector() {
    Spinner spinner = findViewById(R.id.language_spinner);
    // TODO: display language full name instead of language code
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.language_tags, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);
    // TODO: set selection to be current system language
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
            changeLanguage(parent.gereplacedemAtPosition(pos).toString());
        }

        public void onNothingSelected(AdapterView<?> parent) {
        }
    });
}

19 Source : EnvironmentFragment.java
with Apache License 2.0
from weexteam

/**
 * A simple {@link Fragment} subclreplaced.
 */
public clreplaced EnvironmentFragment extends Fragment {

    Spinner spinner;

    ListView list;

    TextView info;

    List<String> items = new ArrayList<>();

    ArrayAdapter arrayAdapter;

    public EnvironmentFragment() {
    // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View root = inflater.inflate(R.layout.fragment_environment, container, false);
        spinner = (Spinner) root.findViewById(R.id.spinner);
        spinner.setAdapter(new ArrayAdapter<>(getContext(), android.R.layout.simple_list_item_1, new String[] { "Modules", "Components", "Environment" }));
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                switch(position) {
                    case 0:
                        showModules();
                        break;
                    case 1:
                        showComponents();
                        break;
                    case 2:
                        showEnvironment();
                        break;
                }
            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {
            }
        });
        list = (ListView) root.findViewById(R.id.list);
        info = (TextView) root.findViewById(R.id.info);
        info.setTypeface(Typeface.MONOSPACE);
        arrayAdapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_list_item_1, items);
        list.setAdapter(arrayAdapter);
        showModules();
        return root;
    }

    private void showModules() {
        final Map<String, TypeModuleFactory> modules = new HashMap<>();
        for (Map.Entry<String, TypeModuleFactory> item : EnvironmentUtil.getExistedModules(true).entrySet()) {
            modules.put(item.getKey() + "  [global]", item.getValue());
        }
        modules.putAll(EnvironmentUtil.getExistedModules(false));
        list.setVisibility(View.VISIBLE);
        info.setText("");
        items.clear();
        items.addAll(modules.keySet());
        ((ArrayAdapter) list.getAdapter()).notifyDataSetChanged();
        list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String item = items.get(position);
                TypeModuleFactory factory = modules.get(item);
                if (factory != null) {
                    JSONArray array = new JSONArray(Arrays.asList(factory.getMethods()));
                    try {
                        info.setText(array.toString(2));
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            }
        });
    }

    private void showComponents() {
        final Map<String, IFComponentHolder> components = EnvironmentUtil.getExistedComponents();
        list.setVisibility(View.VISIBLE);
        info.setText("");
        items.clear();
        items.addAll(components.keySet());
        ((ArrayAdapter) list.getAdapter()).notifyDataSetChanged();
        list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String item = items.get(position);
                IFComponentHolder holder = components.get(item);
                if (holder != null) {
                    JSONArray array = new JSONArray(Arrays.asList(holder.getMethods()));
                    try {
                        info.setText(array.toString(2));
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            }
        });
    }

    private void showEnvironment() {
        list.setVisibility(View.GONE);
        WXParams params = WXBridgeManager.getInstance().getInitParams();
        Map<String, String> environment = WXEnvironment.getConfig();
        environment.put("platform", params.getPlatform());
        environment.put("osVersion", params.getOsVersion());
        environment.put("appVersion", params.getAppVersion());
        environment.put("weexVersion", params.getWeexVersion());
        environment.put("deviceModel", params.getDeviceModel());
        environment.put("appName", params.getAppName());
        environment.put("deviceWidth", params.getDeviceWidth());
        environment.put("deviceHeight", params.getDeviceHeight());
        environment.put("shouldInfoCollect", params.getShouldInfoCollect());
        environment.putAll(WXEnvironment.getCustomOptions());
        JSONObject jsonObject = new JSONObject(environment);
        try {
            info.setText(jsonObject.toString(2));
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }

    private static clreplaced EnvironmentUtil {

        public static Map<String, TypeModuleFactory> getExistedModules(boolean global) {
            Map<String, TypeModuleFactory> modules = new HashMap<>();
            if (global) {
                try {
                    Field sGlobalField = WXModuleManager.clreplaced.getDeclaredField("sGlobalModuleMap");
                    if (sGlobalField != null) {
                        sGlobalField.setAccessible(true);
                        Map map = (Map) sGlobalField.get(null);
                        for (Object key : map.keySet()) {
                            Object value = map.get(key);
                            if (value instanceof WXModule) {
                                TypeModuleFactory factory = new TypeModuleFactory(value.getClreplaced());
                                modules.put((String) key, factory);
                            }
                        }
                    }
                } catch (Throwable t) {
                // ignore
                }
            } else {
                try {
                    Field sModuleField = WXModuleManager.clreplaced.getDeclaredField("sModuleFactoryMap");
                    if (sModuleField != null) {
                        sModuleField.setAccessible(true);
                        return (Map) sModuleField.get(null);
                    }
                } catch (Throwable t) {
                // ignore
                }
            }
            return modules;
        }

        public static Map<String, IFComponentHolder> getExistedComponents() {
            try {
                Field sComponentsField = WXComponentRegistry.clreplaced.getDeclaredField("sTypeComponentMap");
                sComponentsField.setAccessible(true);
                return (Map<String, IFComponentHolder>) sComponentsField.get(null);
            } catch (Throwable t) {
                t.printStackTrace();
            }
            return new HashMap<>();
        }
    }
}

19 Source : HistoryActivity.java
with Apache License 2.0
from weexteam

public final clreplaced HistoryActivity extends ListActivity {

    private static final String TAG = HistoryActivity.clreplaced.getSimpleName();

    private HistoryManager historyManager;

    private ArrayAdapter<HistoryItem> adapter;

    private CharSequence originalreplacedle;

    @Override
    protected void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        this.historyManager = new HistoryManager(this);
        adapter = new HistoryItemAdapter(this);
        setListAdapter(adapter);
        View listview = getListView();
        registerForContextMenu(listview);
        originalreplacedle = getreplacedle();
    }

    @Override
    protected void onResume() {
        super.onResume();
        reloadHistoryItems();
    }

    private void reloadHistoryItems() {
        Iterable<HistoryItem> items = historyManager.buildHistoryItems();
        adapter.clear();
        for (HistoryItem item : items) {
            adapter.add(item);
        }
        setreplacedle(originalreplacedle + " (" + adapter.getCount() + ')');
        if (adapter.isEmpty()) {
            adapter.add(new HistoryItem(null, null, null));
        }
    }

    @Override
    protected void onLisreplacedemClick(ListView l, View v, int position, long id) {
        if (adapter.gereplacedem(position).getResult() != null) {
            Intent intent = new Intent(this, CaptureActivity.clreplaced);
            intent.putExtra(Intents.History.ITEM_NUMBER, position);
            setResult(Activity.RESULT_OK, intent);
            finish();
        }
    }

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
        int position = ((AdapterView.AdapterContextMenuInfo) menuInfo).position;
        if (position >= adapter.getCount() || adapter.gereplacedem(position).getResult() != null) {
            menu.add(Menu.NONE, position, position, R.string.history_clear_one_history_text);
        }
    // else it's just that dummy "Empty" message
    }

    @Override
    public boolean onContexreplacedemSelected(MenuItem item) {
        int position = item.gereplacedemId();
        historyManager.deleteHistoryItem(position);
        reloadHistoryItems();
        return true;
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        if (historyManager.hasHistoryItems()) {
            MenuInflater menuInflater = getMenuInflater();
            menuInflater.inflate(R.menu.history, menu);
        }
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int i = item.gereplacedemId();
        if (i == R.id.menu_history_send) {
            CharSequence history = historyManager.buildHistory();
            Parcelable historyFile = HistoryManager.saveHistory(history.toString());
            if (historyFile == null) {
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setMessage(R.string.msg_unmount_usb);
                builder.setPositiveButton(R.string.button_ok, null);
                builder.show();
            } else {
                Intent intent = new Intent(Intent.ACTION_SEND, Uri.parse("mailto:"));
                intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
                String subject = getResources().getString(R.string.history_email_replacedle);
                intent.putExtra(Intent.EXTRA_SUBJECT, subject);
                intent.putExtra(Intent.EXTRA_TEXT, subject);
                intent.putExtra(Intent.EXTRA_STREAM, historyFile);
                intent.setType("text/csv");
                try {
                    startActivity(intent);
                } catch (ActivityNotFoundException anfe) {
                    Log.w(TAG, anfe.toString());
                }
            }
        } else if (i == R.id.menu_history_clear_text) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setMessage(R.string.msg_sure);
            builder.setCancelable(true);
            builder.setPositiveButton(R.string.button_ok, new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int i2) {
                    historyManager.clearHistory();
                    dialog.dismiss();
                    finish();
                }
            });
            builder.setNegativeButton(R.string.button_cancel, null);
            builder.show();
        } else {
            return super.onOptionsItemSelected(item);
        }
        return true;
    }
}

19 Source : BaseFaqWizard.java
with GNU Affero General Public License v3.0
from w568w

/**
 * @author w568w
 * @date 2017-7-27
 */
public abstract clreplaced BaseFaqWizard extends Fragment {

    protected int currentId = FIRST_ID;

    public static final int FIRST_ID = 0;

    protected abstract ArrayList<FaqStep> getData();

    protected clreplaced FaqStep {

        private int id;

        @NonNull
        private String question = "null";

        @Nullable
        private String[] choose;

        private int[] to;

        public FaqStep(int id, @NonNull String question, String[] choose, int[] to) {
            this.id = id;
            this.question = question;
            this.choose = choose;
            this.to = to;
        }

        public FaqStep(int id, @NonNull String question) {
            this.id = id;
            this.question = question;
        }
    }

    TextView replacedle;

    ListView choose;

    ArrayList<FaqStep> data;

    ArrayAdapter<String> adapter;

    Context context;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        context = inflater.getContext();
        LinearLayout layout = (LinearLayout) inflater.inflate(R.layout.faq_wizard_layout, null);
        choose = (ListView) layout.findViewById(R.id.faq_wizard_list);
        replacedle = (TextView) layout.findViewById(R.id.faq_wizard_replacedle);
        choose.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                if (findStepById(currentId).to != null) {
                    jumpTo(findStepById(currentId).to[i]);
                }
            }
        });
        data = getData();
        jumpTo(FIRST_ID);
        return layout;
    }

    private void jumpTo(int id) {
        FaqStep faqStep = findStepById(id);
        if (faqStep != null) {
            if (faqStep.choose == null) {
                faqStep.choose = new String[] { faqStep.question };
                faqStep.question = "我们已找到解决方案";
                replacedle.setTextColor(Color.parseColor("#ff669900"));
            }
            adapter = new ArrayAdapter<>(context, android.R.layout.simple_list_item_1, faqStep.choose);
            replacedle.setText(faqStep.question);
            choose.setAdapter(adapter);
            currentId = id;
        }
    }

    private FaqStep findStepById(int id) {
        for (FaqStep faqStep : data) {
            if (faqStep.id == id) {
                return faqStep;
            }
        }
        return new FaqStep(0, "", null, null);
    }
}

19 Source : DeviceList.java
with MIT License
from voroshkov

@SuppressLint("NewApi")
public clreplaced DeviceList extends Activity {

    // Debugging
    private static final String TAG = "BluetoothSPP";

    private static final boolean D = true;

    // Member fields
    private BluetoothAdapter mBtAdapter;

    private ArrayAdapter<String> mPairedDevicesArrayAdapter;

    private Set<BluetoothDevice> pairedDevices;

    private Button scanButton;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Setup the window
        requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
        int listId = getIntent().getIntExtra("layout_list", R.layout.device_list);
        setContentView(listId);
        String strBluetoothDevices = getIntent().getStringExtra("bluetooth_devices");
        if (strBluetoothDevices == null)
            strBluetoothDevices = "Bluetooth Devices";
        setreplacedle(strBluetoothDevices);
        // Set result CANCELED in case the user backs out
        setResult(Activity.RESULT_CANCELED);
        // Initialize the button to perform device discovery
        scanButton = (Button) findViewById(R.id.button_scan);
        String strScanDevice = getIntent().getStringExtra("scan_for_devices");
        if (strScanDevice == null)
            strScanDevice = "SCAN FOR DEVICES";
        scanButton.setText(strScanDevice);
        scanButton.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                doDiscovery();
            }
        });
        // Initialize array adapters. One for already paired devices
        // and one for newly discovered devices
        int layout_text = getIntent().getIntExtra("layout_text", R.layout.device_name);
        mPairedDevicesArrayAdapter = new ArrayAdapter<String>(this, layout_text);
        // Find and set up the ListView for paired devices
        ListView pairedListView = (ListView) findViewById(R.id.list_devices);
        pairedListView.setAdapter(mPairedDevicesArrayAdapter);
        pairedListView.setOnItemClickListener(mDeviceClickListener);
        // Register for broadcasts when a device is discovered
        IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
        this.registerReceiver(mReceiver, filter);
        // Register for broadcasts when discovery has finished
        filter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
        this.registerReceiver(mReceiver, filter);
        // Get the local Bluetooth adapter
        mBtAdapter = BluetoothAdapter.getDefaultAdapter();
        // Get a set of currently paired devices
        pairedDevices = mBtAdapter.getBondedDevices();
        // If there are paired devices, add each one to the ArrayAdapter
        if (pairedDevices.size() > 0) {
            for (BluetoothDevice device : pairedDevices) {
                mPairedDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        } else {
            String noDevices = "No devices found";
            mPairedDevicesArrayAdapter.add(noDevices);
        }
    }

    protected void onDestroy() {
        super.onDestroy();
        // Make sure we're not doing discovery anymore
        if (mBtAdapter != null) {
            mBtAdapter.cancelDiscovery();
        }
        // Unregister broadcast listeners
        this.unregisterReceiver(mReceiver);
        this.finish();
    }

    // Start device discover with the BluetoothAdapter
    private void doDiscovery() {
        if (D)
            Log.d(TAG, "doDiscovery()");
        // Remove all element from the list
        mPairedDevicesArrayAdapter.clear();
        // If there are paired devices, add each one to the ArrayAdapter
        if (pairedDevices.size() > 0) {
            for (BluetoothDevice device : pairedDevices) {
                mPairedDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        } else {
            String strNoFound = getIntent().getStringExtra("no_devices_found");
            if (strNoFound == null)
                strNoFound = "No devices found";
            mPairedDevicesArrayAdapter.add(strNoFound);
        }
        // Indicate scanning in the replacedle
        String strScanning = getIntent().getStringExtra("scanning");
        if (strScanning == null)
            strScanning = "Scanning for devices...";
        setProgressBarIndeterminateVisibility(true);
        setreplacedle(strScanning);
        // Turn on sub-replacedle for new devices
        // findViewById(R.id.replacedle_new_devices).setVisibility(View.VISIBLE);
        // If we're already discovering, stop it
        if (mBtAdapter.isDiscovering()) {
            mBtAdapter.cancelDiscovery();
        }
        // Request discover from BluetoothAdapter
        mBtAdapter.startDiscovery();
    }

    // The on-click listener for all devices in the ListViews
    private OnItemClickListener mDeviceClickListener = new OnItemClickListener() {

        public void onItemClick(AdapterView<?> av, View v, int arg2, long arg3) {
            // Cancel discovery because it's costly and we're about to connect
            if (mBtAdapter.isDiscovering())
                mBtAdapter.cancelDiscovery();
            String strNoFound = getIntent().getStringExtra("no_devices_found");
            if (strNoFound == null)
                strNoFound = "No devices found";
            if (!((TextView) v).getText().toString().equals(strNoFound)) {
                // Get the device MAC address, which is the last 17 chars in the View
                String info = ((TextView) v).getText().toString();
                String address = info.substring(info.length() - 17);
                // Create the result Intent and include the MAC address
                Intent intent = new Intent();
                intent.putExtra(BluetoothState.EXTRA_DEVICE_ADDRESS, address);
                // Set result and finish this Activity
                setResult(Activity.RESULT_OK, intent);
                finish();
            }
        }
    };

    // The BroadcastReceiver that listens for discovered devices and
    // changes the replacedle when discovery is finished
    private final BroadcastReceiver mReceiver = new BroadcastReceiver() {

        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            // When discovery finds a device
            if (BluetoothDevice.ACTION_FOUND.equals(action)) {
                // Get the BluetoothDevice object from the Intent
                BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
                // If it's already paired, skip it, because it's been listed already
                if (device.getBondState() != BluetoothDevice.BOND_BONDED) {
                    String strNoFound = getIntent().getStringExtra("no_devices_found");
                    if (strNoFound == null)
                        strNoFound = "No devices found";
                    if (mPairedDevicesArrayAdapter.gereplacedem(0).equals(strNoFound)) {
                        mPairedDevicesArrayAdapter.remove(strNoFound);
                    }
                    mPairedDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress());
                }
            // When discovery is finished, change the Activity replacedle
            } else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) {
                setProgressBarIndeterminateVisibility(false);
                String strSelectDevice = getIntent().getStringExtra("select_device");
                if (strSelectDevice == null)
                    strSelectDevice = "Select a device to connect";
                setreplacedle(strSelectDevice);
            }
        }
    };
}

19 Source : MainActivity.java
with Apache License 2.0
from vinisauter

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    textView = findViewById(R.id.tv_text);
    sp_from = findViewById(R.id.sp_from);
    sp_to = findViewById(R.id.sp_to);
    final ArrayAdapter<Currency> fromAdapter = new ArrayAdapter<Currency>(this, android.R.layout.simple_spinner_item, CurrencyConverter.getCurrencyList()) {

        @NonNull
        @Override
        public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
            return getV(position, convertView, parent);
        }

        @Override
        public View getDropDownView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
            return getV(position, convertView, parent);
        }

        View getV(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
            TextView view = (TextView) super.getView(position, convertView, parent);
            Currency currency = gereplacedem(position);
            if (currency != null)
                view.setText(MessageFormat.format("{0} ({1})", currency.getCurrencyCode(), CurrencyConverter.getCurrencyLocale(currency).get(0).getDisplayCountry()));
            return view;
        }
    };
    final ArrayAdapter<Currency> toAdapter = new ArrayAdapter<Currency>(this, android.R.layout.simple_spinner_item, CurrencyConverter.getCurrencyList()) {

        @NonNull
        @Override
        public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
            return getV(position, convertView, parent);
        }

        @Override
        public View getDropDownView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
            return getV(position, convertView, parent);
        }

        View getV(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
            TextView view = (TextView) super.getView(position, convertView, parent);
            Currency currency = gereplacedem(position);
            if (currency != null)
                view.setText(MessageFormat.format("{0} ({1})", currency.getCurrencyCode(), CurrencyConverter.getCurrencyLocale(currency).get(0).getDisplayCountry()));
            return view;
        }
    };
    sp_from.setAdapter(fromAdapter);
    sp_to.setAdapter(toAdapter);
    ed_value = findViewById(R.id.ed_value);
    ed_value.setText("1");
    sp_from.setSelection(fromAdapter.getPosition(Currency.getInstance("BRL")));
    sp_to.setSelection(toAdapter.getPosition(Currency.getInstance("USD")));
    CurrencyConverter.calculate(10, "BRL", "USD", new CurrencyConverter.Callback() {

        @Override
        public void onValueCalculated(Double value, Exception e) {
            if (e != null) {
                Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
            } else {
                // Do someting with value.
                textView.setText(CurrencyConverter.formatCurrencyValue("USD", value));
            }
        }
    });
    sp_from.setOnItemSelectedListener(this);
    sp_to.setOnItemSelectedListener(this);
    findViewById(R.id.bt_swap).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Currency from = (Currency) sp_from.getSelectedItem();
            Currency to = (Currency) sp_to.getSelectedItem();
            sp_from.setSelection(fromAdapter.getPosition(to));
            sp_to.setSelection(toAdapter.getPosition(from));
        }
    });
    findViewById(R.id.bt_reset).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            CurrencyConverter.reset();
        }
    });
    findViewById(R.id.bt_ok).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            final String from = sp_from.getSelectedItem().toString();
            final String to = sp_to.getSelectedItem().toString();
            if (ed_value.getText().toString().length() > 0) {
                double value = Double.parseDouble(ed_value.getText().toString());
                CurrencyConverter.calculate(value, from, to, new CurrencyConverter.Callback() {

                    @Override
                    public void onValueCalculated(Double value, Exception e) {
                        if (e != null) {
                            textView.setText(e.getMessage());
                        } else {
                            // Do someting with value.
                            textView.setText(CurrencyConverter.formatCurrencyValue(to, value));
                        }
                    }
                });
            }
        }
    });
}

19 Source : PSpinner.java
with GNU General Public License v3.0
from victordiaz

public PSpinner setData(String[] data) {
    this.mData = data;
    ArrayList<String> data_ = new ArrayList<>();
    data_.add("qq1");
    data_.add("qq2");
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_spinner_dropdown_item, data_);
    // adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    this.setAdapter(adapter);
    adapter.notifyDataSetChanged();
    return this;
}

19 Source : MainActivity.java
with Apache License 2.0
from velmurugan35

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    sp = (Spinner) findViewById(R.id.spinner1);
    tv = (TextView) findViewById(R.id.textView1);
    ArrayAdapter<String> adp = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line);
    sp.setAdapter(adp);
}

19 Source : WebViewActivity.java
with GNU General Public License v3.0
from veldor

public clreplaced WebViewActivity extends BaseActivity implements SearchView.OnQueryTextListener {

    public static final String CALLED = "activity_called";

    public static final int CODE_REQUEST_LOGIN = 1;

    private MyWebView mWebView;

    private MainViewModel mMyViewModel;

    private WebViewActivity.BookLoadingReceiver mPageLoadReceiver;

    private View mRootView;

    private ArrayList<String> autocompleteStrings;

    private SearchView mSearchView;

    private ArrayAdapter<String> mSearchAdapter;

    private AlertDialog mTorRestartDialog;

    private TorConnectErrorReceiver mTorConnectErrorReceiver;

    private long mConfirmExit;

    private Dialog mShowLoadDialog;

    private SearchView.SearchAutoComplete mSearchAutocomplete;

    private boolean mIsActivityCalled;

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // проверю куку
        Log.d("surprise", "WebViewActivity.java 77 onCreate: cookie is " + MyPreferences.getInstance().getAuthCookie());
        if (MyPreferences.getInstance().isEInk()) {
            setContentView(R.layout.new_eink_webview_activity);
        } else {
            setContentView(R.layout.new_webview_activity);
        }
        setupInterface();
        showChangesList();
        // проверю, не запущено ли приложение с помощью интента
        if (getIntent().getData() != null) {
            // check if intent is not null
            // set a variable for the Intent
            Uri data = getIntent().getData();
            String fullPath = data.getEncodedPath();
            App.getInstance().setLastLoadedUrl(App.BASE_URL + fullPath);
        }
        // проверю, не вызвана ли активность
        mIsActivityCalled = getIntent().getBooleanExtra(CALLED, false);
        if (mIsActivityCalled) {
            ActionBar actionBar = getSupportActionBar();
            if (actionBar != null) {
                actionBar.setDisplayHomeAsUpEnabled(true);
            }
        }
        // инициализирую переменные
        mWebView = findViewById(R.id.myWebView);
        mRootView = findViewById(R.id.rootView);
        // добавлю viewModel
        mMyViewModel = new ViewModelProvider(this).get(MainViewModel.clreplaced);
        Log.d("surprise", "WebViewActivity onCreate " + mMyViewModel);
        // зарегистрирую получатель команды возвращения на предыдущую страницу
        IntentFilter filter = new IntentFilter();
        filter.addAction(MyWebViewClient.BOOK_LOAD_ACTION);
        mPageLoadReceiver = new WebViewActivity.BookLoadingReceiver();
        registerReceiver(mPageLoadReceiver, filter);
        // зарегистрирую получатель ошибки подключения к TOR
        filter = new IntentFilter();
        filter.addAction(MyWebViewClient.TOR_CONNECT_ERROR_ACTION);
        mTorConnectErrorReceiver = new WebViewActivity.TorConnectErrorReceiver();
        registerReceiver(mTorConnectErrorReceiver, filter);
        handleLoading();
        checkUpdates();
        // создам тестовый массив строк для автозаполнения
        autocompleteStrings = mMyViewModel.getSearchAutocomplete();
    }

    @Override
    protected void setupInterface() {
        super.setupInterface();
        // скрою переход на данное активити
        Menu menuNav = mNavigationView.getMenu();
        MenuItem item = menuNav.findItem(R.id.goToWebView);
        item.setEnabled(false);
        item.setChecked(true);
        // буду отслеживать событие логина
        LiveData<Boolean> cookieObserver = App.sResetLoginCookie;
        cookieObserver.observe(this, aBoolean -> {
            if (aBoolean) {
                Toast.makeText(WebViewActivity.this, "Данные для входа устарели, придётся войти ещё раз", Toast.LENGTH_SHORT).show();
                invalidateOptionsMenu();
            }
        });
    }

    private void showChangesList() {
        // покажу список изменений, если он ещё не показан для этой версии
        if (MyPreferences.getInstance().isShowChanges()) {
            new ChangelogDialog.Builder(this).build().show();
            MyPreferences.getInstance().setChangesViewed();
        }
    }

    private void checkUpdates() {
        if (App.getInstance().isCheckUpdate()) {
            // проверю обновления
            final LiveData<Boolean> version = mMyViewModel.startCheckUpdate();
            version.observe(this, aBoolean -> {
                if (aBoolean != null && aBoolean) {
                    // показываю Snackbar с уведомлением
                    makeUpdateSnackbar();
                }
                version.removeObservers(WebViewActivity.this);
            });
        }
    }

    @Override
    public boolean onSupportNavigateUp() {
        finish();
        return true;
    }

    @Override
    protected void onResume() {
        super.onResume();
        setWebViewBackground();
    }

    private void setWebViewBackground() {
        if (mMyViewModel.getNightModeEnabled()) {
            mWebView.setBackgroundColor(getResources().getColor(android.R.color.black));
        } else {
            mWebView.setBackgroundColor(getResources().getColor(android.R.color.white));
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (mPageLoadReceiver != null)
            unregisterReceiver(mPageLoadReceiver);
        if (mTorConnectErrorReceiver != null)
            unregisterReceiver(mTorConnectErrorReceiver);
    }

    private void makeUpdateSnackbar() {
        Snackbar updateSnackbar = Snackbar.make(mRootView, getString(R.string.snackbar_found_update_message), Snackbar.LENGTH_INDEFINITE);
        updateSnackbar.setAction(getString(R.string.snackbar_update_action_message), v -> mMyViewModel.initializeUpdate());
        updateSnackbar.setActionTextColor(getResources().getColor(android.R.color.white));
        updateSnackbar.show();
    }

    @SuppressLint("RestrictedApi")
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main_menu, menu);
        if (menu instanceof MenuBuilder) {
            MenuBuilder m = (MenuBuilder) menu;
            // noinspection RestrictedApi
            m.setOptionalIconsVisible(true);
        }
        // добавлю обработку поиска
        MenuItem searchMenuItem = menu.findItem(R.id.action_search);
        mSearchView = (SearchView) searchMenuItem.getActionView();
        mSearchView.setInputType(InputType.TYPE_CLreplaced_TEXT);
        mSearchView.setOnQueryTextListener(this);
        mSearchView.setOnSuggestionListener(new SearchView.OnSuggestionListener() {

            @Override
            public boolean onSuggestionSelect(int i) {
                return true;
            }

            @Override
            public boolean onSuggestionClick(int i) {
                String value = autocompleteStrings.get(i);
                mSearchView.setQuery(value, true);
                return true;
            }
        });
        mSearchAutocomplete = mSearchView.findViewById(R.id.search_src_text);
        if (!MyPreferences.getInstance().isEInk()) {
            mSearchAutocomplete.setTextColor(Color.WHITE);
        }
        mSearchAutocomplete.setDropDownBackgroundResource(android.R.color.white);
        mSearchAutocomplete.setDropDownAnchor(R.id.action_search);
        mSearchAutocomplete.setThreshold(0);
        mSearchAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, autocompleteStrings);
        mSearchAutocomplete.setAdapter(mSearchAdapter);
        // добавлю обработку вида страницы
        // определю, какой пункт вида выбран
        switch(mMyViewModel.getViewMode()) {
            case App.VIEW_MODE_NORMAL:
                menu.findItem(R.id.menuUseNormalStyle).setChecked(true);
                break;
            case App.VIEW_MODE_LIGHT:
                menu.findItem(R.id.menuUseLightStyle).setChecked(true);
                break;
            case App.VIEW_MODE_FAST:
                menu.findItem(R.id.menuUseLightFastStyle).setChecked(true);
                break;
            case App.VIEW_MODE_FAT:
                menu.findItem(R.id.menuUseLightFatStyle).setChecked(true);
                break;
            case App.VIEW_MODE_FAST_FAT:
                menu.findItem(R.id.menuUseFatFastStyle).setChecked(true);
                break;
        }
        MenuItem menuItem = menu.findItem(R.id.menuUseDarkMode);
        menuItem.setChecked(mMyViewModel.getNightModeEnabled());
        menuItem = menu.findItem(R.id.logOut);
        menuItem.setVisible(MyPreferences.getInstance().getAuthCookie() != null);
        menuItem = menu.findItem(R.id.login);
        if (MyPreferences.getInstance().getAuthCookie() != null) {
            menuItem.setVisible(false);
        }
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int itemId = item.gereplacedemId();
        if (itemId == R.id.menuUseLightStyle || itemId == R.id.menuUseLightFastStyle || itemId == R.id.menuUseLightFatStyle || itemId == R.id.menuUseNormalStyle || itemId == R.id.menuUseFatFastStyle) {
            mMyViewModel.switchViewMode(item.gereplacedemId());
            invalidateOptionsMenu();
            mWebView.reload();
            return true;
        } else if (itemId == R.id.goHome) {
            mWebView.loadUrl(URLHelper.getBaseOPDSUrl());
            return true;
        } else if (itemId == R.id.showNew) {
            mWebView.loadUrl(App.NEW_BOOKS);
            return true;
        } else if (itemId == R.id.randomBook) {
            mWebView.loadUrl(mMyViewModel.getRandomBookUrl());
            return true;
        } else if (itemId == R.id.shareLink) {
            mMyViewModel.shareLink(mWebView);
            return true;
        } else if (itemId == R.id.login) {
            showLoginDialog();
            return true;
        } else if (itemId == R.id.clearSearchHistory) {
            clearHistory();
            return true;
        } else if (itemId == R.id.logOut) {
            // удалю куку
            MyPreferences.getInstance().removeAuthCookie();
            recreate();
            return true;
        }
        if (item.gereplacedemId() == R.id.menuUseDarkMode) {
            mMyViewModel.switchNightMode();
            new Handler().postDelayed(new WebViewActivity.ResetApp(), 100);
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    private void showLoginDialog() {
        startActivityForResult(new Intent(this, LoginActivity.clreplaced), CODE_REQUEST_LOGIN);
    }

    private void clearHistory() {
        mMyViewModel.clearHistory();
        autocompleteStrings = new ArrayList<>();
        mSearchAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, autocompleteStrings);
        mSearchAutocomplete.setAdapter(mSearchAdapter);
        Toast.makeText(this, "Автозаполнение сброшено", Toast.LENGTH_SHORT).show();
    }

    @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        if (requestCode == START_TOR) {
            // перезагружу страницу
            mWebView.setup();
            mWebView.loadUrl(App.getInstance().getLastLoadedUrl());
        } else if (requestCode == CODE_REQUEST_LOGIN) {
            if (resultCode == RESULT_OK) {
                invalidateOptionsMenu();
                mWebView.loadUrl(App.getInstance().getLastLoadedUrl());
            }
        } else {
            super.onActivityResult(requestCode, resultCode, data);
        }
    }

    @Override
    public boolean onQueryTextSubmit(String s) {
        if (!TextUtils.isEmpty(s.trim())) {
            // ищу введённое значение
            makeSearch(s);
        }
        return true;
    }

    private void makeSearch(String s) {
        changereplacedle("Поиск: " + s);
        String searchString = App.SEARCH_URL + s.trim();
        mWebView.loadUrl(searchString);
        // занесу значение в список автозаполнения
        if (XMLHandler.putSearchValue(s)) {
            // обновлю список поиска
            autocompleteStrings = mMyViewModel.getSearchAutocomplete();
            mSearchAdapter.clear();
            mSearchAdapter.addAll(autocompleteStrings);
            mSearchAdapter.notifyDataSetChanged();
        }
    }

    @Override
    public boolean onQueryTextChange(String s) {
        return false;
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (event.getAction() == KeyEvent.ACTION_DOWN) {
            if (keyCode == KeyEvent.KEYCODE_BACK) {
                // возвращаюсь на страницу назад в браузере
                replacedert mWebView != null;
                if (mWebView.canGoBack()) {
                    mWebView.goBack();
                } else {
                    if (mIsActivityCalled) {
                        finish();
                        return true;
                    }
                    if (mConfirmExit != 0) {
                        if (mConfirmExit > System.currentTimeMillis() - 3000) {
                            // выйду из приложения
                            Log.d("surprise", "OPDSActivity onKeyDown exit");
                            this.finishAffinity();
                        } else {
                            Toast.makeText(this, "Нечего загружать. Нажмите ещё раз для выхода", Toast.LENGTH_SHORT).show();
                            mConfirmExit = System.currentTimeMillis();
                        }
                    } else {
                        Toast.makeText(this, "Нечего загружать. Нажмите ещё раз для выхода", Toast.LENGTH_SHORT).show();
                        mConfirmExit = System.currentTimeMillis();
                    }
                    return true;
                }
                return true;
            }
        }
        return super.onKeyDown(keyCode, event);
    }

    private void handleLoading() {
        startBrowsing();
    }

    private void startBrowsing() {
        mWebView.setup();
        mWebView.loadUrl(App.getInstance().getLastLoadedUrl());
    }

    public clreplaced BookLoadingReceiver extends BroadcastReceiver {

        @Override
        public void onReceive(Context context, Intent intent) {
            int action = intent.getIntExtra(MyWebViewClient.BOOK_LOAD_EVENT, 0);
            switch(action) {
                case MyWebViewClient.START_BOOK_LOADING:
                    showBookLoadingDialog();
                    break;
                case MyWebViewClient.FINISH_BOOK_LOADING:
                    mWebView.loadUrl(App.getInstance().getLastLoadedUrl());
                default:
                    hideBookLoadingDialog();
            }
        }
    }

    public clreplaced TorConnectErrorReceiver extends BroadcastReceiver {

        @Override
        public void onReceive(Context context, Intent intent) {
            // покажу диалоговое окно с оповещением, что TOR остановлен и кнопкой повторного запуска
            String errorDetails = intent.getStringExtra(TorWebClient.ERROR_DETAILS);
            showTorRestartDialog(errorDetails);
        }
    }

    private void showTorRestartDialog(String errorDetails) {
        if (errorDetails == null) {
            errorDetails = "";
        }
        if (mTorRestartDialog == null) {
            // создам диалоговое окно
            AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this, R.style.MyDialogStyle);
            dialogBuilder.setreplacedle(R.string.tor_is_stopped).setMessage(R.string.tor_restart_dialog_message + errorDetails).setPositiveButton(R.string.restart_tor_message, (dialog, which) -> {
                App.getInstance().startTor();
                dialog.dismiss();
                // вернусь в основное активити и подожду перезапуска
                Intent intent = new Intent(WebViewActivity.this, MainActivity.clreplaced);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
            }).setNegativeButton("Ok", null).setCancelable(true);
            mTorRestartDialog = dialogBuilder.create();
        }
        mTorRestartDialog.show();
    }

    private void showBookLoadingDialog() {
        if (mShowLoadDialog == null) {
            mShowLoadDialog = new GifDialog.Builder(this).setreplacedle(getString(R.string.load_waiting_replacedle)).setMessage(getString(R.string.load_waiting_message)).setGifResource(// Preplaced your Gif here
            R.drawable.loading).isCancellable(false).build();
        }
        mShowLoadDialog.show();
    }

    private void hideBookLoadingDialog() {
        if (mShowLoadDialog != null) {
            mShowLoadDialog.hide();
        }
    }

    @Override
    public void onLowMemory() {
        super.onLowMemory();
        Log.d("surprise", "MainActivity onLowMemory: oops, low memory... Save me...");
    }

    @Override
    protected void onSaveInstanceState(@NotNull Bundle outState) {
        super.onSaveInstanceState(outState);
        mWebView.saveState(outState);
    }

    @Override
    protected void onRestoreInstanceState(@NotNull Bundle savedInstanceState) {
        super.onRestoreInstanceState(savedInstanceState);
        mWebView.restoreState(savedInstanceState);
    }

    private clreplaced ResetApp implements Runnable {

        @Override
        public void run() {
            Intent intent = new Intent(WebViewActivity.this, MainActivity.clreplaced);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
            WebViewActivity.this.startActivity(intent);
            Runtime.getRuntime().exit(0);
        }
    }

    @Override
    public void onBackPressed() {
        DrawerLayout drawer = findViewById(R.id.drawer_layout);
        if (drawer.isDrawerOpen(GravityCompat.START)) {
            drawer.closeDrawer(GravityCompat.START);
        } else {
            super.onBackPressed();
        }
    }
}

19 Source : ContextUtility.java
with MIT License
from varunon9

public void populateSimpleListView(ListView listView, ArrayList<String> list) {
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1, list);
    listView.setAdapter(arrayAdapter);
}

19 Source : AddClassDialog.java
with GNU General Public License v3.0
from unitools-apps

private void SetupSpinners() {
    String[] modes = getContext().getResources().getStringArray(R.array.weekDays);
    ArrayAdapter<String> adapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, modes);
    daySpinner.setAdapter(adapter);
}

19 Source : TimeSpanPicker.java
with GNU General Public License v3.0
from ultrasonic

/**
 * Created by Joshua Bahnsen on 12/22/13.
 */
public clreplaced TimeSpanPicker extends LinearLayout implements AdapterView.OnItemSelectedListener {

    private EditText timeSpanEditText;

    private Spinner timeSpanSpinner;

    private CheckBox timeSpanDisableCheckbox;

    private TimeSpan timeSpan;

    private ArrayAdapter<CharSequence> adapter;

    private Context context;

    private View dialog;

    public TimeSpanPicker(Context context) {
        this(context, null);
        this.context = context;
    }

    public TimeSpanPicker(Context context, AttributeSet attrs) {
        this(context, attrs, 0);
        this.context = context;
    }

    public TimeSpanPicker(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        this.context = context;
        final LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        dialog = inflater.inflate(R.layout.time_span_dialog, this, true);
        timeSpan = new TimeSpan(-1);
        timeSpanEditText = (EditText) dialog.findViewById(R.id.timeSpanEditText);
        timeSpanEditText.setText("0");
        timeSpanSpinner = (Spinner) dialog.findViewById(R.id.timeSpanSpinner);
        timeSpanDisableCheckbox = (CheckBox) dialog.findViewById(R.id.timeSpanDisableCheckBox);
        timeSpanDisableCheckbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
                timeSpanEditText.setEnabled(!b);
                timeSpanSpinner.setEnabled(!b);
            }
        });
        adapter = ArrayAdapter.createFromResource(context, R.array.shareExpirationNames, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        timeSpanSpinner.setAdapter(adapter);
        timeSpanSpinner.setOnItemSelectedListener(this);
    }

    @Override
    public void setEnabled(boolean enabled) {
        timeSpanEditText.setEnabled(enabled);
        timeSpanSpinner.setEnabled(enabled);
    }

    public TimeSpan getTimeSpan() {
        this.timeSpan = !timeSpanDisableCheckbox.isChecked() ? getTimeSpanFromDialog(this.context, dialog) : new TimeSpan(0);
        return timeSpan;
    }

    public boolean getTimeSpanEnabled() {
        return !timeSpanDisableCheckbox.isChecked();
    }

    public String getTimeSpanType() {
        EditText timeSpanEditText = (EditText) dialog.findViewById(R.id.timeSpanEditText);
        if (timeSpanEditText == null) {
            return null;
        }
        return (String) timeSpanSpinner.getSelectedItem();
    }

    public int getTimeSpanAmount() {
        Spinner timeSpanSpinner = (Spinner) dialog.findViewById(R.id.timeSpanSpinner);
        if (timeSpanSpinner == null) {
            return -1;
        }
        Editable text = timeSpanEditText.getText();
        String timeSpanAmountString = null;
        if (text != null) {
            timeSpanAmountString = text.toString();
        }
        int timeSpanAmount = 0;
        if (timeSpanAmountString != null && !"".equals(timeSpanAmountString)) {
            timeSpanAmount = Integer.parseInt(timeSpanAmountString);
        }
        return timeSpanAmount;
    }

    public void setTimeSpanAmount(CharSequence amount) {
        timeSpanEditText.setText(amount);
    }

    public void setTimeSpanType(CharSequence type) {
        timeSpanSpinner.setSelection(adapter.getPosition(type));
    }

    public void setTimeSpanDisableText(CharSequence text) {
        timeSpanDisableCheckbox.setText(text);
    }

    public void setTimeSpanDisableCheckboxChecked(boolean checked) {
        timeSpanDisableCheckbox.setChecked(checked);
    }

    public static TimeSpan getTimeSpanFromDialog(Context context, View dialog) {
        EditText timeSpanEditText = (EditText) dialog.findViewById(R.id.timeSpanEditText);
        Spinner timeSpanSpinner = (Spinner) dialog.findViewById(R.id.timeSpanSpinner);
        if (timeSpanEditText == null || timeSpanSpinner == null) {
            return new TimeSpan(-1);
        }
        String timeSpanType = (String) timeSpanSpinner.getSelectedItem();
        Editable text = timeSpanEditText.getText();
        String timeSpanAmountString = null;
        if (text != null) {
            timeSpanAmountString = text.toString();
        }
        int timeSpanAmount = 0;
        if (timeSpanAmountString != null && !"".equals(timeSpanAmountString)) {
            timeSpanAmount = Integer.parseInt(timeSpanAmountString);
        }
        return calculateTimeSpan(context, timeSpanType, timeSpanAmount);
    }

    public static TimeSpan calculateTimeSpan(Context context, String timeSpanType, int timeSpanAmount) {
        TimeSpan timeSpan = null;
        Resources resources = context.getResources();
        if (resources.getText(R.string.settings_share_milliseconds).equals(timeSpanType)) {
            timeSpan = new TimeSpan(timeSpanAmount);
        } else if (resources.getText(R.string.settings_share_seconds).equals(timeSpanType)) {
            timeSpan = TimeSpan.create(0, timeSpanAmount);
        } else if (resources.getText(R.string.settings_share_minutes).equals(timeSpanType)) {
            timeSpan = TimeSpan.create(timeSpanAmount, 0);
        } else if (resources.getText(R.string.settings_share_hours).equals(timeSpanType)) {
            timeSpan = TimeSpan.create(timeSpanAmount, 0, 0);
        } else if (resources.getText(R.string.settings_share_days).equals(timeSpanType)) {
            timeSpan = TimeSpan.create(timeSpanAmount, 0, 0, 0);
        }
        return timeSpan;
    }

    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
        String timeSpanType = (String) parent.gereplacedemAtPosition(pos);
        Editable text = timeSpanEditText.getText();
        if (text == null) {
            return;
        }
        String timeSpanAmountString = text.toString();
        int timeSpanAmount = 0;
        if (timeSpanAmountString != null && !"".equals(timeSpanAmountString)) {
            timeSpanAmount = Integer.parseInt(timeSpanAmountString);
        }
        this.timeSpan = calculateTimeSpan(this.context, timeSpanType, timeSpanAmount);
    }

    @Override
    public void onNothingSelected(AdapterView<?> adapterView) {
    }
}

19 Source : SettingsActivity.java
with MIT License
from UdacityAndroidBasicsScholarship

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_settings);
    Toolbar toolbar = findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setDisplayShowHomeEnabled(true);
    setreplacedle("Settings");
    mSettingsListView = findViewById(R.id.settings_list);
    mSettingsItemArray = getResources().getStringArray(R.array.settings_item_array);
    ArrayAdapter settingsArrayAdapter = new ArrayAdapter<>(getApplicationContext(), R.layout.layout_settings_item, mSettingsItemArray);
    mSettingsListView.setAdapter(settingsArrayAdapter);
    mSettingsListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int settingsItemIndex, long l) {
            switch(settingsItemIndex) {
                case 0:
                    startActivity(new Intent(getApplicationContext(), ManageAccountActivity.clreplaced));
                    break;
                case 1:
                    startActivity(new Intent(getApplicationContext(), TrustedContactsActivity.clreplaced));
                    break;
                case 2:
                    startActivity(new Intent(getApplicationContext(), SirenSoundActivity.clreplaced));
                    break;
                case 3:
                    // TODO: Settings - Gestures
                    break;
                case 4:
                    // TODO: Settings - Language
                    break;
            }
        }
    });
}

19 Source : Settings.java
with GNU General Public License v3.0
from TwrpBuilder

/**
 * Created by berkantkz on 19.09.2018.
 * # twrpbuilder
 */
public clreplaced Settings extends PreferenceActivity {

    @NonNull
    private String[] supportLangs;

    @NonNull
    private String[] langList;

    private ArrayAdapter<String> supportedLang;

    @Override
    public void onCreate(Bundle savedInstance) {
        super.onCreate(savedInstance);
        addPreferencesFromResource(R.xml.settings);
        supportLangs = getResources().getStringArray(R.array.supportLangs);
        langList = getResources().getStringArray(R.array.langList);
        final View root = Settings.this.getListView();
        findPreference("preference_language").setSummary(langList[PreferenceManager.getDefaultSharedPreferences(Settings.this).getInt("langlist", 0)]);
        supportedLang = new ArrayAdapter<>(this, android.R.layout.simple_list_item_single_choice);
        for (String s : langList) {
            supportedLang.add(s);
        }
        AlertDialog.Builder builder = new AlertDialog.Builder(Settings.this, R.style.SettingsTheme_Dialog);
        builder.setreplacedle(R.string.select_lang).setAdapter(supportedLang, new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                String lang = supportLangs[which];
                new setLocale(getBaseContext(), lang);
                PreferenceManager.getDefaultSharedPreferences(Settings.this).edit().putString("lang", lang).putInt("langlist", which).apply();
                findPreference("preference_language").setSummary(langList[which]);
                Snackbar.make(root, R.string.restart_change, Snackbar.LENGTH_SHORT).show();
            }
        }).setCancelable(true).setNegativeButton(R.string.cancel, null);
        final AlertDialog alert = builder.create();
        // setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
        findPreference("preference_language").setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {

            @Override
            public boolean onPreferenceClick(Preference preference) {
                alert.show();
                return false;
            }
        });
        findPreference("preference_disable_notification").setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {

            @Override
            public boolean onPreferenceChange(Preference preference, Object o) {
                if (preference.isEnabled()) {
                    FirebaseMessaging.getInstance().unsubscribeFromTopic("pushNotifications");
                    Log.d(getResources().getString(R.string.app_name), "Notifications are disabled.");
                } else {
                    FirebaseMessaging.getInstance().subscribeToTopic("pushNotifications");
                    Log.d(getResources().getString(R.string.app_name), "Notifications are enabled.");
                }
                return true;
            }
        });
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.gereplacedemId();
        if (id == android.R.id.home) {
            onBackPressed();
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

19 Source : RoutinesCardListFragment.java
with Apache License 2.0
from triline3

public clreplaced RoutinesCardListFragment extends BaseFragment implements RoutinesFragment.OnScrollBoundaryDecider {

    List<DBRoutine> mDBRoutines;

    OnRoutineSelectedListener mRoutineSelectedCallback;

    ArrayAdapter adapter;

    ListView listview;

    Drawable ic;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_routines_card_list, container, false);
        listview = rootView.findViewById(R.id.routines_list);
        View empty = rootView.findViewById(android.R.id.empty);
        listview.setEmptyView(empty);
        mDBRoutines = DB.routines().findAllForActiveUser();
        ic = new IconicsDrawable(getContext()).icon(CommunityMaterial.Icon.cmd_clock).colorRes(R.color.agenda_item_replacedle).paddingDp(8).sizeDp(40);
        adapter = new RoutinesListAdapter(getActivity(), R.layout.item_routines_list, mDBRoutines);
        listview.setAdapter(adapter);
        return rootView;
    }

    @Override
    public void onAttach(Activity activity) {
        super.onAttach(activity);
        Log.d(getTag(), "Activity " + activity.getClreplaced().getName() + ", " + (activity instanceof OnRoutineSelectedListener));
        // If the container activity has implemented
        // the callback interface, set it as listener
        if (activity instanceof OnRoutineSelectedListener) {
            mRoutineSelectedCallback = (OnRoutineSelectedListener) activity;
        }
    }

    private View createRoutineLisreplacedem(LayoutInflater inflater, final DBRoutine dbRoutine) {
        int hour = new Date(dbRoutine.getBeginTs()).getHours();
        int minute = new Date(dbRoutine.getBeginTs()).getMinutes();
        String strHour = String.valueOf(hour >= 10 ? hour : "0" + hour);
        String strMinute = ":" + String.valueOf(minute >= 10 ? minute : "0" + minute);
        View item = inflater.inflate(R.layout.item_routines_list, null);
        ((TextView) item.findViewById(R.id.routines_list_item_hour)).setText(strHour);
        ((TextView) item.findViewById(R.id.routines_list_item_minute)).setText(strMinute);
        ((TextView) item.findViewById(R.id.routines_list_item_name)).setText(dbRoutine.name());
        ((ImageButton) item.findViewById(R.id.imageButton2)).setImageDrawable(ic);
        ((TextView) item.findViewById(R.id.routines_list_item_subreplacedle)).setText("pautas asociadas");
        View overlay = item.findViewById(R.id.routine_list_item_container);
        overlay.setTag(dbRoutine);
        View.OnClickListener clickListener = new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                DBRoutine r = (DBRoutine) view.getTag();
                if (mRoutineSelectedCallback != null && r != null) {
                    Log.d(getTag(), "Click at " + r.name());
                    mRoutineSelectedCallback.onRoutineSelected(r);
                } else {
                    Log.d(getTag(), "No callback set");
                }
            }
        };
        overlay.setOnClickListener(clickListener);
        overlay.setOnLongClickListener(new View.OnLongClickListener() {

            @Override
            public boolean onLongClick(View view) {
                if (view.getTag() != null)
                    showDeleteConfirmationDialog((DBRoutine) view.getTag());
                return true;
            }
        });
        return item;
    }

    void showDeleteConfirmationDialog(final DBRoutine r) {
        String message = String.format(getString(R.string.remove_routine_message_short), r.name());
        new MaterialDialog.Builder(getActivity()).replacedle(getString(R.string.remove_routine_dialog_replacedle)).content(message).positiveText(getString(R.string.dialog_yes_option)).onPositive(new MaterialDialog.SingleButtonCallback() {

            @Override
            public void onClick(MaterialDialog dialog, DialogAction which) {
                notifyDataChanged();
            }
        }).negativeText(getString(R.string.dialog_no_option)).onNegative(new MaterialDialog.SingleButtonCallback() {

            @Override
            public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                dialog.dismiss();
            }
        }).show();
    }

    public void notifyDataChanged() {
        Log.d(getTag(), "Routines - Notify data change");
        new ReloadItemsTask().execute();
    }

    @Override
    public void onStart() {
        super.onStart();
        TimeCatApp.eventBus().register(this);
    }

    @Override
    public void onStop() {
        TimeCatApp.eventBus().unregister(this);
        super.onStop();
    }

    // Method called from the event bus
    @SuppressWarnings("unused")
    public void onEvent(Object evt) {
        if (evt instanceof PersistenceEvents.ActiveUserChangeEvent) {
            notifyDataChanged();
        }
    }

    @Override
    public boolean canRefresh() {
        return false;
    }

    @Override
    public boolean canLoadMore() {
        return false;
    }

    // Container Activity must implement this interface
    public interface OnRoutineSelectedListener {

        void onRoutineSelected(DBRoutine r);

        void onCreateRoutine();
    }

    private clreplaced RoutinesListAdapter extends ArrayAdapter<DBRoutine> {

        public RoutinesListAdapter(Context context, int layoutResourceId, List<DBRoutine> items) {
            super(context, layoutResourceId, items);
        }

        @SuppressLint("ViewHolder")
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            final LayoutInflater layoutInflater = getActivity().getLayoutInflater();
            if (mDBRoutines.size() != 0) {
                return createRoutineLisreplacedem(layoutInflater, mDBRoutines.get(position));
            }
            if (convertView == null) {
                convertView = layoutInflater.inflate(R.layout.design_drawer_item, parent, false);
            }
            return convertView;
        }
    }

    private clreplaced ReloadItemsTask extends AsyncTask<Void, Void, Void> {

        @Override
        protected Void doInBackground(Void... params) {
            mDBRoutines = DB.routines().findAllForActiveUser();
            return null;
        }

        @Override
        protected void onPostExecute(Void aVoid) {
            super.onPostExecute(aVoid);
            adapter.clear();
            for (DBRoutine r : mDBRoutines) {
                adapter.add(r);
            }
            adapter.notifyDataSetChanged();
        }
    }
}

19 Source : GrantedPhonesEditableListAdapter.java
with MIT License
from tranquvis

/**
 * Created by Andreas Kaltenleitner on 30.08.2016.
 */
public clreplaced GrantedPhonesEditableListAdapter extends ArrayAdapter<String> {

    private static final int LAYOUT_RES = R.layout.listview_item_granted_phones_editable;

    private List<String> phones;

    private ListView listView;

    private List<String> usedNumbers;

    private ArrayAdapter phoneListAdapter;

    public GrantedPhonesEditableListAdapter(Context context, List<String> phones, ListView listView) {
        super(context, LAYOUT_RES, phones);
        this.phones = phones;
        this.listView = listView;
        this.usedNumbers = DataManager.getUserData().getAllUsedPhones();
        phoneListAdapter = new ArrayAdapter<>(getContext(), R.layout.dropdown_item_phone, R.id.textView_phone, usedNumbers);
    }

    @NonNull
    @Override
    public View getView(final int position, View convertView, @NonNull ViewGroup parent) {
        if (convertView == null) {
            LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflater.inflate(LAYOUT_RES, parent, false);
        }
        String phone = phones.get(position);
        final AutoCompleteTextView phoneEditText = (AutoCompleteTextView) convertView.findViewById(R.id.edittext_phonenumber);
        ImageButton deleteButton = (ImageButton) convertView.findViewById(R.id.imageButton_delete);
        phoneEditText.setText(phone);
        if (phoneListAdapter != null)
            phoneEditText.setAdapter(phoneListAdapter);
        deleteButton.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                removePhone(position);
            }
        });
        return convertView;
    }

    private void removePhone(int position) {
        updateData();
        phones.remove(position);
        notifyDataSetChanged();
    }

    public void addPhone(String phone) {
        updateData();
        phones.add(phone);
        notifyDataSetChanged();
    }

    @Override
    public void notifyDataSetChanged() {
        super.notifyDataSetChanged();
        UIUtils.SetListViewHeightBasedOnItems(listView);
    }

    public void updateData() {
        for (int i = 0; i < listView.getChildCount(); i++) {
            View view = listView.getChildAt(i);
            EditText editText = (EditText) view.findViewById(R.id.edittext_phonenumber);
            if (phones.size() > i)
                phones.set(i, editText.getText().toString());
        }
    }
}

19 Source : ActivityCompanyAdd.java
with GNU General Public License v3.0
from tortuvshin

/**
 * Author: Tortuvshin Byambaa.
 * Project: TechstarShop
 * URL: https://www.github.com/tortuvshin
 */
public clreplaced ActivityCompanyAdd extends AppCompatActivity implements OnItemSelectedListener {

    private static final String TAG = CompanyFragment.clreplaced.getSimpleName();

    EditText name, description, phone, email, image;

    private Handler mHandler;

    PrefManager prefManager;

    private Spinner catSpinner;

    private Spinner subCatSpinner;

    private ArrayAdapter<String> catAdapter;

    private ArrayAdapter<Category> subCatAdapter;

    JSONObject category;

    JSONArray careplacedems;

    Bitmap bitmap;

    ImageView uploadedImage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_brand_add);
        getSupportActionBar().setreplacedle(getString(R.string.company_add));
        getSupportActionBar().setHomeButtonEnabled(true);
        name = (EditText) findViewById(R.id.bName);
        description = (EditText) findViewById(R.id.bDescription);
        phone = (EditText) findViewById(R.id.bPhone);
        email = (EditText) findViewById(R.id.bEmail);
        Button add = (Button) findViewById(R.id.btnBrandAdd);
        catSpinner = (Spinner) findViewById(R.id.catSpinner);
        subCatSpinner = (Spinner) findViewById(R.id.subCatSpinner);
        catSpinner.setOnItemSelectedListener(this);
        subCatSpinner.setOnItemSelectedListener(this);
        uploadedImage = (ImageView) findViewById(R.id.brand_add_photo);
        prefManager = new PrefManager(this);
        mHandler = new Handler(Looper.getMainLooper());
        getCategory();
        uploadedImage.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                if (bitmap != null) {
                    new AlertDialog.Builder(ActivityCompanyAdd.this).setMessage(getString(R.string.image_select)).setPositiveButton(getString(R.string.yes), new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialogInterface, int i) {
                            chooseFile();
                        }
                    }).setNegativeButton(getString(R.string.no), new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialogInterface, int i) {
                            Toast.makeText(ActivityCompanyAdd.this, "Cool, next time then...", Toast.LENGTH_SHORT).show();
                        }
                    }).create().show();
                } else {
                    chooseFile();
                }
            }
        });
        add.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                add.setEnabled(false);
                DialogUtils.getInstance().startProgress(ActivityCompanyAdd.this, getString(R.string.loading));
                create(name.getText().toString(), description.getText().toString(), prefManager.getUserId(), prefManager.getCatId(), prefManager.getLanguage(), phone.getText().toString(), email.getText().toString(), "", bitmap);
                DialogUtils.getInstance().stopProgress();
                finish();
            }
        });
    }

    public void create(String name, String desc, int userId, String catId, String lang, String mobile, String email, String address, Bitmap bitmap) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.JPEG, 85, baos);
        byte[] imageBytes = baos.toByteArray();
        String randomChunk = UUID.randomUUID().toString().substring(0, 8).replaceAll("-", "");
        String imageName = randomChunk.concat(".jpg");
        OkHttpClient client = new OkHttpClient();
        RequestBody formBody = new MultipartBody.Builder().setType(MultipartBody.FORM).addFormDataPart("state", "c").addFormDataPart("name", name).addFormDataPart("description", desc).addFormDataPart("ui", String.valueOf(userId)).addFormDataPart("categoryId", catId).addFormDataPart("language", lang).addFormDataPart("mobile", mobile).addFormDataPart("email", email).addFormDataPart("address", address).addFormDataPart("file", imageName, RequestBody.create(MediaType.parse("image/*"), imageBytes)).build();
        String uri = TSConstants.BrandService;
        Log.e("Exection: ", uri + " ");
        Request request = new Request.Builder().url(uri).post(formBody).build();
        Log.e(TAG, request.toString());
        client.newCall(request).enqueue(new Callback() {

            @Override
            public void onFailure(Call call, IOException e) {
                Log.e(TAG, "Login failed : " + e.getMessage());
            }

            @Override
            public void onResponse(Call call, final Response response) throws IOException {
                final String res = response.body().string();
                Log.e(TAG, res);
                mHandler.post(new Runnable() {

                    @Override
                    public void run() {
                        try {
                            JSONArray ob = new JSONArray(String.valueOf(res));
                            Log.e(TAG, ob.toString());
                            String success = "";
                            for (int i = 0; i < ob.length(); i++) {
                                success = ob.getJSONObject(i).getString("success");
                            }
                            if (success == "1") {
                                Toast.makeText(ActivityCompanyAdd.this, getString(R.string.success), Toast.LENGTH_LONG).show();
                            } else {
                                Toast.makeText(ActivityCompanyAdd.this, getString(R.string.error), Toast.LENGTH_LONG).show();
                            }
                        } catch (JSONException e) {
                            e.printStackTrace();
                            Log.e("ERROR : ", e.getMessage() + " ");
                        }
                    }
                });
            }
        });
    }

    private void getCategory() {
        String uri = TSConstants.CategoryService;
        OkHttpClient client = new OkHttpClient();
        Request request = new Request.Builder().url(uri).build();
        Log.e(TAG, request.toString());
        client.newCall(request).enqueue(new Callback() {

            @Override
            public void onFailure(Call call, IOException e) {
                Log.e(TAG, e.getMessage());
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                final String res = response.body().string();
                mHandler.post(() -> {
                    try {
                        category = new JSONObject(String.valueOf("{category=" + res + "}"));
                        careplacedems = category.getJSONArray("category");
                        List<String> categories = new ArrayList<String>();
                        for (int i = 0; i < careplacedems.length(); i++) {
                            if (!careplacedems.getJSONObject(i).getString("level").equalsIgnoreCase("3"))
                                categories.add(careplacedems.getJSONObject(i).getString("name"));
                        }
                        catAdapter = new ArrayAdapter<String>(ActivityCompanyAdd.this, android.R.layout.simple_spinner_item, categories);
                        catAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                        catSpinner.setAdapter(catAdapter);
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                });
            }
        });
    }

    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
        switch(parent.getId()) {
            case R.id.catSpinner:
                List<Category> subCats = new ArrayList<Category>();
                try {
                    String catId = careplacedems.getJSONObject(position).getString("id");
                    Log.e(TAG, careplacedems.getJSONObject(position).getString("id") + " " + careplacedems.getJSONObject(position).getString("name"));
                    for (int i = 0; i < careplacedems.length(); i++) {
                        String parentId = careplacedems.getJSONObject(i).getString("parent_id");
                        if (catId.equalsIgnoreCase(parentId)) {
                            Log.e(TAG, "Parent id: " + parentId + " name: " + careplacedems.getJSONObject(i).getString("name"));
                            subCats.add(new Category(careplacedems.getJSONObject(i).getString("id"), careplacedems.getJSONObject(i).getString("name")));
                        } else {
                        }
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }
                subCatAdapter = new ArrayAdapter<Category>(ActivityCompanyAdd.this, android.R.layout.simple_spinner_item, subCats);
                subCatAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                subCatSpinner.setAdapter(subCatAdapter);
                break;
            case R.id.subCatSpinner:
                Category category = (Category) parent.getSelectedItem();
                Log.e(TAG, "Дэд ангилал сонгосон: " + category.getCategoryId() + " нэр: " + category.getCategoryName());
                prefManager.setCat(category.getCategoryId());
                break;
        }
    }

    @Override
    public void onNothingSelected(AdapterView<?> parent) {
    }

    public void chooseFile() {
        Intent mIntent = new Intent();
        mIntent.setType("image/*");
        mIntent.setAction(Intent.ACTION_GET_CONTENT);
        startActivityForResult(Intent.createChooser(mIntent, "Choose an image..."), 2123);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 2123 & data != null && resultCode == RESULT_OK) {
            Uri imageUri = data.getData();
            try {
                bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), imageUri);
                uploadedImage.setImageBitmap(bitmap);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch(item.gereplacedemId()) {
            case android.R.id.home:
                finish();
                break;
            default:
                return super.onOptionsItemSelected(item);
        }
        return false;
    }
}

19 Source : SplashAdActivity.java
with GNU General Public License v3.0
from toponteam

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash);
    spinner = (Spinner) findViewById(R.id.splash_spinner);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(SplashAdActivity.this, android.R.layout.simple_spinner_dropdown_item, unitGroupName);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(SplashAdActivity.this, parent.gereplacedemAtPosition(position).toString(), Toast.LENGTH_SHORT).show();
            mCurrentSelectIndex = position;
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
        }
    });
    findViewById(R.id.show_btn).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Intent intent = new Intent(SplashAdActivity.this, SplashAdShowActivity.clreplaced);
            intent.putExtra("unitId", placementIds[mCurrentSelectIndex]);
            startActivity(intent);
        }
    });
}

19 Source : BannerAdActivity.java
with GNU General Public License v3.0
from toponteam

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_banner);
    Spinner spinner = (Spinner) findViewById(R.id.banner_spinner);
    final FrameLayout frameLayout = findViewById(R.id.adview_container);
    mBannerView = new ATBannerView(this);
    mBannerView.setPlacementId(placementIds[mCurrentSelectIndex]);
    frameLayout.addView(mBannerView, new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, dip2px(300)));
    mBannerView.setBannerAdListener(new ATBannerListener() {

        @Override
        public void onBannerLoaded() {
            Log.i("BannerAdActivity", "onBannerLoaded");
            Toast.makeText(BannerAdActivity.this, "onBannerLoaded", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerFailed(AdError adError) {
            Log.i("BannerAdActivity", "onBannerFailed:" + adError.printStackTrace());
            Toast.makeText(BannerAdActivity.this, "onBannerFailed", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerClicked(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerClicked:" + enreplacedy.toString());
            Toast.makeText(BannerAdActivity.this, "onBannerClicked", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerShow(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerShow:" + enreplacedy.toString());
            Toast.makeText(BannerAdActivity.this, "onBannerShow", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerClose(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerClose:" + enreplacedy.toString());
            Toast.makeText(BannerAdActivity.this, "onBannerClose", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerAutoRefreshed(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerAutoRefreshed:" + enreplacedy.toString());
        }

        @Override
        public void onBannerAutoRefreshFail(AdError adError) {
            Log.i("BannerAdActivity", "onBannerAutoRefreshFail");
        }
    });
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(BannerAdActivity.this, android.R.layout.simple_spinner_dropdown_item, unitGroupName);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(BannerAdActivity.this, parent.gereplacedemAtPosition(position).toString(), Toast.LENGTH_SHORT).show();
            mCurrentSelectIndex = position;
            mBannerView.setPlacementId(placementIds[mCurrentSelectIndex]);
            mBannerView.setVisibility(View.VISIBLE);
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
        }
    });
    findViewById(R.id.loadAd_btn).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            HashMap<String, String> maps = new HashMap<>();
            // since v5.6.5
            Map<String, Object> localExtra = new HashMap<>();
            localExtra.put(AdmobATConst.ADAPTIVE_TYPE, AdmobATConst.ADAPTIVE_ANCreplacedD);
            localExtra.put(AdmobATConst.ADAPTIVE_ORIENTATION, AdmobATConst.ORIENTATION_CURRENT);
            // localExtra.put(AdmobATConst.INLINE_ADAPTIVE_ORIENTATION, AdmobATConst.ORIENTATION_PORTRAIT);
            // localExtra.put(AdmobATConst.INLINE_ADAPTIVE_ORIENTATION, AdmobATConst.ORIENTATION_LANDSCAPE);
            localExtra.put(AdmobATConst.ADAPTIVE_WIDTH, getResources().getDisplayMetrics().widthPixels);
            mBannerView.setLocalExtra(localExtra);
            mBannerView.loadAd();
        }
    });
}

19 Source : BannerAdActivity.java
with GNU General Public License v3.0
from toponteam

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_banner);
    Spinner spinner = (Spinner) findViewById(R.id.banner_spinner);
    final FrameLayout frameLayout = findViewById(R.id.adview_container);
    mBannerView = new ATBannerView(this);
    mBannerView.setPlacementId(placementIds[mCurrentSelectIndex]);
    frameLayout.addView(mBannerView, new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, dip2px(300)));
    mBannerView.setBannerAdListener(new ATBannerListener() {

        @Override
        public void onBannerLoaded() {
            Log.i("BannerAdActivity", "onBannerLoaded");
            Toast.makeText(BannerAdActivity.this, "onBannerLoaded", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerFailed(AdError adError) {
            Log.i("BannerAdActivity", "onBannerFailed:" + adError.printStackTrace());
            Toast.makeText(BannerAdActivity.this, "onBannerFailed: " + adError.printStackTrace(), Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerClicked(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerClicked:" + enreplacedy.toString());
            Toast.makeText(BannerAdActivity.this, "onBannerClicked", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerShow(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerShow:" + enreplacedy.toString());
            Toast.makeText(BannerAdActivity.this, "onBannerShow", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerClose(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerClose:" + enreplacedy.toString());
            Toast.makeText(BannerAdActivity.this, "onBannerClose", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onBannerAutoRefreshed(ATAdInfo enreplacedy) {
            Log.i("BannerAdActivity", "onBannerAutoRefreshed:" + enreplacedy.toString());
        }

        @Override
        public void onBannerAutoRefreshFail(AdError adError) {
            Log.i("BannerAdActivity", "onBannerAutoRefreshFail");
        }
    });
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(BannerAdActivity.this, android.R.layout.simple_spinner_dropdown_item, unitGroupName);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(BannerAdActivity.this, parent.gereplacedemAtPosition(position).toString(), Toast.LENGTH_SHORT).show();
            mCurrentSelectIndex = position;
            mBannerView.setPlacementId(placementIds[mCurrentSelectIndex]);
            mBannerView.setVisibility(View.VISIBLE);
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
        }
    });
    findViewById(R.id.loadAd_btn).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            HashMap<String, String> maps = new HashMap<>();
            mBannerView.setUnitId(placementIds[mCurrentSelectIndex]);
            mBannerView.loadAd();
        }
    });
}

19 Source : TopMenuWindow.java
with Apache License 2.0
from TommyLemon

/**
 * 通用顶部弹出菜单
 *  @author Lemon
 *  @use
 *  <br> toActivity或startActivityForResult (TopMenuWindow.createIntent(...), requestCode);
 *  <br> 然后在onActivityResult方法内
 *  <br> data.getIntExtra(TopMenuWindow.RESULT_POSITION); 可得到点击的 position
 *  <br> 或
 *  <br> data.getIntExtra(TopMenuWindow.RESULT_INTENT_CODE); 可得到点击的 intentCode
 */
public clreplaced TopMenuWindow extends Activity implements OnItemClickListener, OnClickListener {

    private static final String TAG = "TopMenuWindow";

    // 启动方法<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    /**
     * 启动TopMenuWindow的Intent
     *  @param context
     *  @param replacedle - 非必需
     *  @param names
     *  @return
     */
    public static Intent createIntent(Context context, String[] names) {
        return createIntent(context, names, new ArrayList<Integer>());
    }

    /**
     * 启动TopMenuWindow的Intent
     *  @param context
     *  @param replacedle - 非必需
     *  @param nameList
     *  @return
     */
    public static Intent createIntent(Context context, ArrayList<String> nameList) {
        return createIntent(context, nameList, null);
    }

    /**
     * 启动TopMenuWindow的Intent
     *  @param context
     *  @param replacedle - 非必需
     *  @param names
     *  @param intentCodes
     *  @return
     */
    public static Intent createIntent(Context context, String[] names, int[] intentCodes) {
        return new Intent(context, TopMenuWindow.clreplaced).putExtra(INTENT_NAMES, names).putExtra(INTENT_INTENTCODES, intentCodes);
    }

    /**
     * 启动TopMenuWindow的Intent
     *  @param context
     *  @param replacedle - 非必需
     *  @param names
     *  @param intentCodeList
     *  @return
     */
    public static Intent createIntent(Context context, String[] names, ArrayList<Integer> intentCodeList) {
        return new Intent(context, TopMenuWindow.clreplaced).putExtra(INTENT_NAMES, names).putExtra(INTENT_INTENTCODES, intentCodeList);
    }

    /**
     * 启动TopMenuWindow的Intent
     *  @param context
     *  @param replacedle - 非必需
     *  @param nameList
     *  @param intentCodeList
     *  @return
     */
    public static Intent createIntent(Context context, ArrayList<String> nameList, ArrayList<Integer> intentCodeList) {
        return new Intent(context, TopMenuWindow.clreplaced).putStringArrayListExtra(INTENT_NAMES, nameList).putIntegerArrayListExtra(INTENT_INTENTCODES, intentCodeList);
    }

    // 启动方法>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    private boolean isAlive;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.top_menu_window);
        isAlive = true;
        init();
    }

    public static final String INTENT_NAMES = "INTENT_NAMES";

    public static final String INTENT_INTENTCODES = "INTENT_INTENTCODES";

    public static final String RESULT_NAME = "RESULT_NAME";

    public static final String RESULT_POSITION = "RESULT_POSITION";

    public static final String RESULT_INTENT_CODE = "RESULT_INTENT_CODE";

    private ArrayList<String> nameList = null;

    private ArrayList<Integer> intentCodeList = null;

    private ArrayAdapter<String> adapter;

    private ListView lvTopMenu;

    private View llTopMenuWindowBg;

    private void init() {
        llTopMenuWindowBg = findViewById(R.id.llTopMenuWindowBg);
        llTopMenuWindowBg.setOnClickListener(this);
        Intent intent = getIntent();
        int[] intentCodes = intent.getIntArrayExtra(INTENT_INTENTCODES);
        if (intentCodes == null || intentCodes.length <= 0) {
            intentCodeList = intent.getIntegerArrayListExtra(INTENT_INTENTCODES);
        } else {
            intentCodeList = new ArrayList<Integer>();
            for (int code : intentCodes) {
                intentCodeList.add(code);
            }
        }
        String[] menuItems = intent.getStringArrayExtra(INTENT_NAMES);
        if (menuItems == null || menuItems.length <= 0) {
            nameList = intent.getStringArrayListExtra(INTENT_NAMES);
        } else {
            nameList = new ArrayList<String>(Arrays.asList(menuItems));
        }
        if (nameList == null || nameList.size() <= 0) {
            Log.e(TAG, "init   nameList == null || nameList.size() <= 0 >> finish();return;");
            finish();
            return;
        }
        adapter = new ArrayAdapter<String>(this, R.layout.top_menu_list_item, R.id.tvTopMenuLisreplacedem, nameList);
        lvTopMenu = (ListView) findViewById(R.id.lvTopMenuWindowMenu);
        lvTopMenu.setAdapter(adapter);
        lvTopMenu.setOnItemClickListener(this);
    }

    @Override
    public void onClick(View v) {
        if (v.getId() == R.id.llTopMenuWindowBg) {
            finish();
        }
    }

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Intent intent = new Intent().putExtra(RESULT_POSITION, position);
        if (intentCodeList != null && intentCodeList.size() > position) {
            intent.putExtra(RESULT_INTENT_CODE, intentCodeList.get(position));
        }
        setResult(RESULT_OK, intent);
        finish();
    }

    @Override
    public void onBackPressed() {
        finish();
    }

    @Override
    public void finish() {
        if (isAlive == false) {
            Log.e(TAG, "finish  isAlive == false >> return;");
            return;
        }
        llTopMenuWindowBg.setEnabled(false);
        super.finish();
        overridePendingTransition(R.anim.null_anim, R.anim.null_anim);
    }

    @Override
    protected void onDestroy() {
        isAlive = false;
        super.onDestroy();
    }
}

19 Source : EditTextInfoActivity.java
with Apache License 2.0
from TommyLemon

/**
 * 通用编辑个人资料文本界面
 *  @author Lemon
 *  @use
 *  <br> toActivity或startActivityForResult (EditTextInfoActivity.createIntent(...), requestCode);
 *  <br> 然后在onActivityResult方法内
 *  <br> data.getStringExtra(EditTextInfoActivity.RESULT_EDIT_TEXT_INFO); 可得到输入框内容
 */
public clreplaced EditTextInfoActivity extends BaseActivity implements OnBottomDragListener {

    public static final String TAG = "EditTextInfoActivity";

    // 启动方法<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    public static final String RESULT_TYPE = "RESULT_TYPE";

    public static final String RESULT_KEY = "RESULT_KEY";

    public static final String RESULT_VALUE = "RESULT_VALUE";

    public static final String RESULT_URL = "RESULT_URL";

    public static final String RESULT_ID = "RESULT_ID";

    public static final String RESULT_IMAGE_URL = "RESULT_IMAGE_URL";

    /**
     * @param context
     * @param key
     * @param value
     * @return
     */
    public static Intent createIntent(Context context, String key, String value) {
        return createIntent(context, 0, key, value);
    }

    /**
     * @param context
     * @param type
     * @param key
     * @param value
     * @return
     */
    public static Intent createIntent(Context context, int type, String key, String value) {
        return new Intent(context, EditTextInfoActivity.clreplaced).putExtra(INTENT_TYPE, type).putExtra(INTENT_KEY, key).putExtra(INTENT_VALUE, value);
    }

    // 启动方法>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    @Override
    public Activity getActivity() {
        return this;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 传this是为了全局滑动返回
        setContentView(R.layout.edit_text_info_activity, this);
        // 必须调用<<<<<<<<<<<
        initView();
        initData();
        initEvent();
    // 必须调用>>>>>>>>>>
    }

    // UI显示区(操作UI,但不存在数据获取或处理代码,也不存在事件监听代码)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    private EditText etEditTextInfo;

    private View ivEditTextInfoClear;

    private TextView tvEditTextInfoRemind;

    private ListView lvEditTextInfo;

    // private XListView lvEditTextInfo;
    @Override
    public void initView() {
        // 必须调用
        etEditTextInfo = (EditText) findViewById(R.id.etEditTextInfo);
        ivEditTextInfoClear = findViewById(R.id.ivEditTextInfoClear);
        tvEditTextInfoRemind = (TextView) findViewById(R.id.tvEditTextInfoRemind);
        lvEditTextInfo = (ListView) findViewById(R.id.lvEditTextInfo);
    }

    private ArrayAdapter<String> adapter;

    /**
     * 显示列表内容
     *  @author author
     *  @param list
     */
    private void setList(List<String> list) {
        if (hasList == false || list == null || list.size() <= 0) {
            Log.i(TAG, "setList list == null || list.size() <= 0 >> adapter = null;lvEditTextInfo.setAdapter(null); return;");
            adapter = null;
            lvEditTextInfo.setAdapter(null);
            return;
        }
        adapter = new ArrayAdapter<String>(context, R.layout.list_item, R.id.tvLisreplacedem, list);
        lvEditTextInfo.setAdapter(adapter);
        // if (hasUrl) {
        // }
        lvEditTextInfo.smoothScrollBy(60, 200);
    }

    // UI显示区(操作UI,但不存在数据获取或处理代码,也不存在事件监听代码)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // Data数据区(存在数据获取或处理代码,但不存在事件监听代码)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    public static final int TYPE_NICK = EditTextInfoWindow.TYPE_NICK;

    public static final int TYPE_NAME = EditTextInfoWindow.TYPE_NAME;

    public static final int TYPE_PHONE = EditTextInfoWindow.TYPE_PHONE;

    public static final int TYPE_WEBSITE = EditTextInfoWindow.TYPE_WEBSITE;

    public static final int TYPE_EMAIL = EditTextInfoWindow.TYPE_EMAIL;

    public static final int TYPE_FAX = EditTextInfoWindow.TYPE_FAX;

    public static final int TYPE_USUALADDRESS = EditTextInfoWindow.TYPE_USUALADDRESS;

    public static final int TYPE_MAILADDRESS = EditTextInfoWindow.TYPE_MAILADDRESS;

    public static final int TYPE_SCHOOL = EditTextInfoWindow.TYPE_SCHOOL;

    public static final int TYPE_COMPANY = EditTextInfoWindow.TYPE_COMPANY;

    public static final int TYPE_PROFESSION = EditTextInfoWindow.TYPE_PROFESSION;

    public static final int TYPE_NOTE = EditTextInfoWindow.TYPE_NOTE;

    // public static final int TYPE_OTHER = EditTextInfoWindow.TYPE_OTHER;
    public static final String INTENT_TYPE = EditTextInfoWindow.INTENT_TYPE;

    public static final String INTENT_KEY = EditTextInfoWindow.INTENT_KEY;

    public static final String INTENT_VALUE = EditTextInfoWindow.INTENT_VALUE;

    private int intentType = 0;

    private int maxEms = 30;

    private boolean hasList = false;

    private boolean hasUrl = false;

    private ArrayList<String> list;

    @Override
    public void initData() {
        // 必须调用
        intent = getIntent();
        intentType = intent.getIntExtra(INTENT_TYPE, 0);
        if (StringUtil.isNotEmpty(intent.getStringExtra(INTENT_KEY), true)) {
            tvBasereplacedle.setText(StringUtil.getCurrentString());
        }
        etEditTextInfo.setSingleLine(intentType != TYPE_NOTE);
        switch(intentType) {
            case TYPE_NICK:
                maxEms = 20;
                break;
            case TYPE_PHONE:
                etEditTextInfo.setInputType(InputType.TYPE_CLreplaced_PHONE);
                maxEms = 11;
                break;
            case TYPE_EMAIL:
                etEditTextInfo.setInputType(InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
                maxEms = 60;
                break;
            case TYPE_WEBSITE:
                etEditTextInfo.setInputType(InputType.TYPE_TEXT_VARIATION_WEB_EDIT_TEXT);
                maxEms = 200;
                break;
            case TYPE_MAILADDRESS:
                maxEms = 60;
                break;
            case TYPE_PROFESSION:
                tvEditTextInfoRemind.setText("所属行业");
                maxEms = 15;
            case TYPE_NOTE:
                maxEms = 100;
                break;
            default:
                break;
        }
        etEditTextInfo.setMaxEms(maxEms);
        tvEditTextInfoRemind.setText("限" + maxEms / 2 + "个字(或" + maxEms + "个字符)");
        getList(intentType);
    }

    private int requestSize = 20;

    /**
     * 获取列表
     *  @author lemon
     *  @param listType
     *  @return
     */
    protected void getList(final int listType) {
        if (hasList == false) {
            return;
        }
        list = new ArrayList<String>();
        runThread(TAG + "getList", new Runnable() {

            @Override
            public void run() {
                Log.i(TAG, "getList  listType = " + listType);
                if (listType == TYPE_PROFESSION) {
                    list = new ArrayList<String>(Arrays.asList(context.getResources().getStringArray(R.array.profesions)));
                }
                runUiThread(new Runnable() {

                    @Override
                    public void run() {
                        dismissProgressDialog();
                        if (hasList) {
                            setList(list);
                        }
                    }
                });
            }
        });
    }

    private void saveAndExit() {
        String editedValue = StringUtil.getTrimedString(etEditTextInfo);
        if (editedValue.equals("" + getIntent().getStringExtra(INTENT_VALUE))) {
            showShortToast("内容没有改变哦~");
        } else {
            intent = new Intent();
            intent.putExtra(RESULT_TYPE, getIntent().getIntExtra(INTENT_TYPE, -1));
            // intent.putExtra(RESULT_TYPE, StringUtil.getTrimedString(etEditTextInfo));
            // intent.putExtra(RESULT_KEY, StringUtil.getTrimedString(etEditTextInfo));
            intent.putExtra(RESULT_VALUE, editedValue);
            setResult(RESULT_OK, intent);
            exitAnim = R.anim.left_push_out;
            finish();
        }
    }

    // Data数据区(存在数据获取或处理代码,但不存在事件监听代码)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // Event事件区(只要存在事件监听代码就是)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    private String inputedString;

    private static final long SEARCH_DELAY_TIME = 240;

    private Handler searchHandler;

    @Override
    public void initEvent() {
        // 必须调用
        searchHandler = new Handler(new Callback() {

            @Override
            public boolean handleMessage(Message msg) {
                if (msg == null) {
                    Log.e(TAG, "searchHandler  handleMessage  (msg == null >> return false;");
                    return false;
                }
                Log.i(TAG, "inputedString = " + inputedString + "msg.obj = " + msg.obj);
                if (inputedString != null) {
                    if (inputedString.equals(msg.obj)) {
                        getList(intentType);
                    }
                }
                return false;
            }
        });
        etEditTextInfo.addTextChangedListener(new Texreplacedcher() {

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                inputedString = StringUtil.getTrimedString(s);
                if (StringUtil.isNotEmpty(inputedString, true) == false) {
                    ivEditTextInfoClear.setVisibility(View.GONE);
                } else {
                    ivEditTextInfoClear.setVisibility(View.VISIBLE);
                    if (hasUrl == true) {
                        Message msg = new Message();
                        msg.obj = inputedString;
                        searchHandler.sendMessageDelayed(msg, SEARCH_DELAY_TIME);
                    }
                }
            }

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            }

            @Override
            public void afterTextChanged(Editable s) {
            }
        });
        ivEditTextInfoClear.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                etEditTextInfo.setText("");
            }
        });
        etEditTextInfo.setText(StringUtil.getTrimedString(getIntent().getStringExtra(INTENT_VALUE)));
        etEditTextInfo.setSelection(StringUtil.getLength(etEditTextInfo, true));
        if (hasList == true) {
            EditTextUtil.hideKeyboard(context, etEditTextInfo);
            if (hasUrl) {
                lvEditTextInfo.setOnScrollListener(new OnScrollListener() {

                    @Override
                    public void onScrollStateChanged(AbsListView view, int scrollState) {
                    }

                    @Override
                    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
                        if (adapter != null && lvEditTextInfo.getLastVisiblePosition() >= adapter.getCount() - 1) {
                            requestSize += 20;
                            Log.i(TAG, "initEvent  lvEditTextInfo.setOnScrollListener( >> onScroll getList(intentType);requestSize = " + requestSize);
                            getList(intentType);
                        }
                    }
                });
            // } else {
            }
            lvEditTextInfo.setOnItemClickListener(new OnItemClickListener() {

                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    // if (hasUrl) {
                    // position -= lvEditTextInfo.getHeaderViewsCount();
                    // }
                    if (position < adapter.getCount()) {
                        etEditTextInfo.setText("" + adapter.gereplacedem(position));
                        if (hasUrl) {
                            intent = new Intent();
                            intent.putExtra(RESULT_TYPE, getIntent().getIntExtra(INTENT_TYPE, -1));
                            intent.putExtra(RESULT_KEY, getIntent().getStringExtra(INTENT_KEY));
                            intent.putExtra(RESULT_VALUE, adapter.gereplacedem(position));
                            setResult(RESULT_OK, intent);
                            finish();
                            return;
                        }
                        saveAndExit();
                    }
                }
            });
            lvEditTextInfo.setOnTouchListener(new View.OnTouchListener() {

                @SuppressLint("ClickableViewAccessibility")
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    EditTextUtil.hideKeyboard(context, etEditTextInfo);
                    return false;
                }
            });
        }
    }

    @Override
    public void onDragBottom(boolean rightToLeft) {
        if (rightToLeft) {
            saveAndExit();
            return;
        }
        finish();
    }

    @Override
    public void onForwardClick(View v) {
        if (hasUrl == false) {
            onDragBottom(true);
        } else {
            Message msg = new Message();
            msg.obj = inputedString;
            searchHandler.sendMessage(msg);
        }
    }

    // 系统自带监听方法<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    @Override
    public void finish() {
        super.finish();
        EditTextUtil.hideKeyboard(context, etEditTextInfo);
    }
    // 类相关监听<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    // 类相关监听>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // 系统自带监听方法>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // Event事件区(只要存在事件监听代码就是)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // 内部类,尽量少用<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    // 内部类,尽量少用>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
}

19 Source : BottomMenuWindow.java
with Apache License 2.0
from TommyLemon

/**
 * 通用底部弹出菜单
 *  @author Lemon
 *  @use
 *  <br> toActivity或startActivityForResult (BottomMenuWindow.createIntent(...), requestCode);
 *  <br> 然后在onActivityResult方法内
 *  <br> data.getIntExtra(BottomMenuWindow.RESULT_ITEM_ID); 可得到点击的 position
 *  <br> 或
 *  <br> data.getIntExtra(BottomMenuWindow.RESULT_INTENT_CODE); 可得到点击的 intentCode
 */
public clreplaced BottomMenuWindow extends BaseBottomWindow implements OnItemClickListener {

    private static final String TAG = "BottomMenuWindow";

    // 启动方法<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    /**
     * 启动BottomMenuWindow的Intent
     *  @param context
     *  @param names
     *  @return
     */
    public static Intent createIntent(Context context, String[] names) {
        return createIntent(context, names, new ArrayList<Integer>());
    }

    /**
     * 启动BottomMenuWindow的Intent
     *  @param context
     *  @param nameList
     *  @return
     */
    public static Intent createIntent(Context context, ArrayList<String> nameList) {
        return createIntent(context, nameList, null);
    }

    /**
     * 启动BottomMenuWindow的Intent
     *  @param context
     *  @param names
     *  @param ids
     *  @return
     */
    public static Intent createIntent(Context context, String[] names, int[] ids) {
        return new Intent(context, BottomMenuWindow.clreplaced).putExtra(INTENT_ITEMS, names).putExtra(INTENT_ITEM_IDS, ids);
    }

    /**
     * 启动BottomMenuWindow的Intent
     *  @param context
     *  @param names
     *  @param idList
     *  @return
     */
    public static Intent createIntent(Context context, String[] names, ArrayList<Integer> idList) {
        return new Intent(context, BottomMenuWindow.clreplaced).putExtra(INTENT_ITEMS, names).putExtra(INTENT_ITEM_IDS, idList);
    }

    /**
     * 启动BottomMenuWindow的Intent
     *  @param context
     *  @param nameList
     *  @param idList
     *  @return
     */
    public static Intent createIntent(Context context, ArrayList<String> nameList, ArrayList<Integer> idList) {
        return new Intent(context, BottomMenuWindow.clreplaced).putStringArrayListExtra(INTENT_ITEMS, nameList).putIntegerArrayListExtra(INTENT_ITEM_IDS, idList);
    }

    // 启动方法>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    @Override
    public Activity getActivity() {
        return this;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.bottom_menu_window);
        // 功能归类分区方法,必须调用<<<<<<<<<<
        initView();
        initData();
        initEvent();
    // 功能归类分区方法,必须调用>>>>>>>>>>
    }

    // UI显示区(操作UI,但不存在数据获取或处理代码,也不存在事件监听代码)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    private ListView lvBottomMenu;

    @Override
    public void initView() {
        // 必须调用
        super.initView();
        lvBottomMenu = (ListView) findViewById(R.id.lvBottomMenu);
    }

    // UI显示区(操作UI,但不存在数据获取或处理代码,也不存在事件监听代码)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // Data数据区(存在数据获取或处理代码,但不存在事件监听代码)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    private String replacedle;

    private ArrayList<String> nameList = null;

    private ArrayList<Integer> idList = null;

    private ArrayAdapter<String> adapter;

    @Override
    public void initData() {
        // 必须调用
        super.initData();
        intent = getIntent();
        replacedle = intent.getStringExtra(INTENT_replacedLE);
        if (StringUtil.isNotEmpty(replacedle, true)) {
            tvBasereplacedle.setVisibility(View.VISIBLE);
            tvBasereplacedle.setText(StringUtil.getCurrentString());
        } else {
            tvBasereplacedle.setVisibility(View.GONE);
        }
        int[] ids = intent.getIntArrayExtra(INTENT_ITEM_IDS);
        if (ids == null || ids.length <= 0) {
            idList = intent.getIntegerArrayListExtra(INTENT_ITEM_IDS);
        } else {
            idList = new ArrayList<Integer>();
            for (int id : ids) {
                idList.add(id);
            }
        }
        String[] menuItems = intent.getStringArrayExtra(INTENT_ITEMS);
        if (menuItems == null || menuItems.length <= 0) {
            nameList = intent.getStringArrayListExtra(INTENT_ITEMS);
        } else {
            nameList = new ArrayList<String>(Arrays.asList(menuItems));
        }
        if (nameList == null || nameList.size() <= 0) {
            Log.e(TAG, "init   nameList == null || nameList.size() <= 0 >> finish();return;");
            finish();
            return;
        }
        adapter = new ArrayAdapter<String>(this, R.layout.bottom_menu_item, R.id.tvBottomMenuItem, nameList);
        lvBottomMenu.setAdapter(adapter);
    }

    // Data数据区(存在数据获取或处理代码,但不存在事件监听代码)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // Event事件区(只要存在事件监听代码就是)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    @Override
    public void initEvent() {
        // 必须调用
        super.initEvent();
        lvBottomMenu.setOnItemClickListener(this);
        vBaseBottomWindowRoot.setOnTouchListener(new OnTouchListener() {

            @SuppressLint("ClickableViewAccessibility")
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                finish();
                return true;
            }
        });
    }

    // 系统自带监听<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    // 类相关监听<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        intent = new Intent().putExtra(RESULT_replacedLE, StringUtil.getTrimedString(tvBasereplacedle)).putExtra(RESULT_ITEM_ID, position);
        if (idList != null && idList.size() > position) {
            intent.putExtra(RESULT_ITEM_ID, idList.get(position));
        }
        setResult(RESULT_OK, intent);
        finish();
    }

    @Override
    protected void setResult() {
    }
    // 类相关监听>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // 系统自带监听方法>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // 类相关监听>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // 系统自带监听>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // Event事件区(只要存在事件监听代码就是)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    // 内部类,尽量少用<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    // 内部类,尽量少用>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
}

19 Source : MainActivity.java
with MIT License
from tomasz-m

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    dataProvider = Injector.getDataProvider(getApplicationContext());
    superSpinner = (SuperSpinner) findViewById(R.id.superSpinner);
    // setting adapter is not needed when you use filtering
    ArrayAdapter<String> simpleAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, dataProvider.gereplacedems(null));
    superSpinner.setAdapter(simpleAdapter);
    replacedert superSpinner != null;
    // superSpinner.setFilterable(true);
    superSpinner.setEmptyText("AAA!!\nNO ITEMS :(");
    superSpinner.setHintView(ITEM_LAYOUT_RES_ID, android.R.id.text1, "-please select-");
    superSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            Log.d("On Item Selected", superSpinner.getSelectedItem().toString());
        }

        @Override
        public void onNothingSelected(AdapterView<?> adapterView) {
        }
    });
// final CheckBox simulateLongQueryChB = (CheckBox) findViewById(R.id.simulateLongCheckbox);
// replacedert simulateLongQueryChB != null;
// simulateLongQueryChB.
// setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
// @Override
// public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
// setSpinnerMode(b);
// }
// });
// simulateLongQueryChB.setChecked(false);
// setSpinnerMode(false);
}

19 Source : EspressoActivity4.java
with Apache License 2.0
from tinyvampirepudge

@Override
protected void buildContentView() {
    String[] content = new String[50];
    for (int j = 0; j < 50; j++) {
        content[j] = "item" + j;
    }
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1, content);
    ListView listView = (ListView) findViewById(R.id.listview);
    listView.setAdapter(adapter);
    listView.setOnItemClickListener((parent, view, position, id) -> ToastUtils.showSingleToast(content[position]));
}

19 Source : ListViewActivity.java
with Apache License 2.0
from tinyvampirepudge

@Override
protected void buildContentView() {
    List<String> lists = new ArrayList<>();
    for (int i = 1; i < 100; i++) {
        lists.add("list --> " + i);
    }
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1, lists);
    ListView listView = (ListView) findViewById(R.id.listview);
    listView.setAdapter(adapter);
}

19 Source : ContactActivity.java
with Apache License 2.0
from tinyvampirepudge

public clreplaced ContactActivity extends BaseActivity {

    public static void actionStart(Context context) {
        Intent intent = new Intent();
        intent.setClreplaced(context, ContactActivity.clreplaced);
        context.startActivity(intent);
    }

    @BindView(R.id.lv_contact)
    ListView lvContact;

    private List<String> contactList;

    private ArrayAdapter<String> adapter;

    @Override
    protected int setContentLayout() {
        return R.layout.activity_contact;
    }

    @Override
    protected void buildContentView() {
        contactList = new ArrayList<>();
        adapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1, contactList);
        lvContact.setAdapter(adapter);
        if (ContextCompat.checkSelfPermission(this, android.Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
            ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.READ_CONTACTS }, 1000);
        } else {
            readContact();
        }
    }

    private void readContact() {
        Cursor cursor = null;
        try {
            // 查询联系人数据
            cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);
            if (cursor != null) {
                while (cursor.moveToNext()) {
                    // 获取联系人姓名
                    String displayName = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
                    // 获取联系人手机号
                    String number = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
                    contactList.add(displayName + "\n" + number);
                }
                adapter.notifyDataSetChanged();
            }
        } catch (SecurityException e) {
            e.printStackTrace();
        } finally {
            if (cursor != null) {
                cursor.close();
            }
        }
    }

    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        switch(requestCode) {
            case 1000:
                if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                    readContact();
                } else {
                    Toast.makeText(mContext, "You deny the permission!", Toast.LENGTH_SHORT).show();
                }
                break;
        }
    }

    @Override
    protected void initViewData() {
    }
}

19 Source : ChooseAreaFragment.java
with Apache License 2.0
from tinyvampirepudge

/**
 * Created by 87959 on 2017/6/3.
 */
public clreplaced ChooseAreaFragment extends Fragment {

    public static final int LEVEL_PROVINCE = 0;

    public static final int LEVEL_CITY = 1;

    public static final int LEVEL_COUNTY = 2;

    private ProgressDialog progressDialog;

    private TextView replacedleText;

    private ImageView backButton;

    private ListView listView;

    private ArrayAdapter<String> adapter;

    private List<String> dataList = new ArrayList<>();

    // 省列表
    private List<Province> provinceList;

    // 市列表
    private List<City> cityList;

    // 县列表
    private List<County> countyList;

    // 选中的省份
    private Province selectedProvince;

    // 选中的城市
    private City selectedCity;

    // 当前选中的级别
    private int currentLevel;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.choose_area, container, false);
        replacedleText = (TextView) view.findViewById(R.id.replacedle_text);
        backButton = (ImageView) view.findViewById(R.id.back_button);
        listView = (ListView) view.findViewById(R.id.list_view);
        adapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1, dataList);
        listView.setAdapter(adapter);
        return view;
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (currentLevel == LEVEL_PROVINCE) {
                    selectedProvince = provinceList.get(position);
                    queryCities();
                } else if (currentLevel == LEVEL_CITY) {
                    selectedCity = cityList.get(position);
                    queryCounties();
                } else if (currentLevel == LEVEL_COUNTY) {
                    String weatherId = countyList.get(position).getWeatherId();
                    if (getActivity() instanceof CoolWeatherActivity) {
                        Intent intent = new Intent(getActivity(), WeatherDetailActivity.clreplaced);
                        intent.putExtra("weather_id", weatherId);
                        startActivity(intent);
                        getActivity().finish();
                    } else if (getActivity() instanceof WeatherDetailActivity) {
                        WeatherDetailActivity activity = (WeatherDetailActivity) getActivity();
                        activity.drawerLayout.closeDrawers();
                        activity.swipeRefresh.setRefreshing(true);
                        activity.requestWeather(weatherId);
                    }
                }
            }
        });
        backButton.setOnClickListener(v -> {
            if (LEVEL_COUNTY == currentLevel) {
                queryCities();
            } else if (LEVEL_CITY == currentLevel) {
                queryProvinces();
            }
        });
        queryProvinces();
    }

    /**
     * 查询全国所有的省,优先从数据库查询,如果没有查询到再去服务器上查询
     */
    private void queryProvinces() {
        replacedleText.setText(R.string.string_replacedle_china);
        backButton.setVisibility(View.GONE);
        provinceList = LitePal.findAll(Province.clreplaced);
        if (provinceList.size() > 0) {
            dataList.clear();
            for (Province province : provinceList) {
                dataList.add(province.getProvinceName());
            }
            adapter.notifyDataSetChanged();
            listView.setSelection(0);
            currentLevel = LEVEL_PROVINCE;
        } else {
            String address = "http://guolin.tech/api/china";
            queryFromServer(address, "province");
        }
    }

    private void queryCities() {
        replacedleText.setText(selectedProvince.getProvinceName());
        backButton.setVisibility(View.VISIBLE);
        cityList = LitePal.where("provinceid = ?", String.valueOf(selectedProvince.getId())).find(City.clreplaced);
        if (cityList.size() > 0) {
            dataList.clear();
            for (City city : cityList) {
                dataList.add(city.getCityName());
            }
            adapter.notifyDataSetChanged();
            listView.setSelection(0);
            currentLevel = LEVEL_CITY;
        } else {
            int provinceCode = selectedProvince.getProvinceCode();
            String address = "http://guolin.tech/api/china/" + provinceCode;
            queryFromServer(address, "city");
        }
    }

    private void queryCounties() {
        replacedleText.setText(selectedCity.getCityName());
        backButton.setVisibility(View.VISIBLE);
        countyList = LitePal.where("cityid = ?", String.valueOf(selectedCity.getId())).find(County.clreplaced);
        if (countyList.size() > 0) {
            dataList.clear();
            for (County county : countyList) {
                dataList.add(county.getCountyName());
            }
            adapter.notifyDataSetChanged();
            listView.setSelection(0);
            currentLevel = LEVEL_COUNTY;
        } else {
            int provinceCode = selectedProvince.getProvinceCode();
            int cityCode = selectedCity.getCityCode();
            String address = "http://guolin.tech/api/china/" + provinceCode + "/" + cityCode;
            queryFromServer(address, "county");
        }
    }

    /**
     * 根据传入的地址和类型从服务器上查询省市县数据
     *
     * @param address
     * @param type
     */
    private void queryFromServer(String address, String type) {
        showProgressDialog();
        HttpUtil.sendOkHttpRequest(address, new Callback() {

            @Override
            public void onFailure(Call call, IOException e) {
                getActivity().runOnUiThread(() -> {
                    dismissProgressDialog();
                    ToastUtils.showSingleToast(getString(R.string.string_load_failed));
                });
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                String responseText = response.body().string();
                boolean result = false;
                if ("province".equals(type)) {
                    result = Utility.handleProvinceResponse(responseText);
                } else if ("city".equals(type)) {
                    result = Utility.handleCityResponse(responseText, selectedProvince.getId());
                } else if ("county".equals(type)) {
                    result = Utility.handleCountyResponse(responseText, selectedCity.getId());
                }
                if (result) {
                    getActivity().runOnUiThread(() -> {
                        dismissProgressDialog();
                        if ("province".equals(type)) {
                            queryProvinces();
                        } else if ("city".equals(type)) {
                            queryCities();
                        } else if ("county".equals(type)) {
                            queryCounties();
                        }
                    });
                }
            }
        });
    }

    private void showProgressDialog() {
        if (progressDialog == null) {
            progressDialog = new ProgressDialog(getActivity());
            progressDialog.setMessage(getString(R.string.string_loading));
            progressDialog.setCanceledOnTouchOutside(false);
        }
        progressDialog.show();
    }

    private void dismissProgressDialog() {
        if (progressDialog != null) {
            progressDialog.dismiss();
        }
    }
}

See More Examples