Search in sources :

Example 11 with ViewStub

use of android.view.ViewStub in project android_frameworks_base by ParanoidAndroid.

the class ViewStubTest method testInflated.

@UiThreadTest
@MediumTest
public void testInflated() throws Exception {
    final StubbedView activity = getActivity();
    final ViewStub stub = (ViewStub) activity.findViewById(R.id.viewStub);
    final View swapped = stub.inflate();
    assertNotNull("The inflated view is null", swapped);
}
Also used : ViewStub(android.view.ViewStub) StubbedView(android.view.StubbedView) StubbedView(android.view.StubbedView) View(android.view.View) UiThreadTest(android.test.UiThreadTest) MediumTest(android.test.suitebuilder.annotation.MediumTest)

Example 12 with ViewStub

use of android.view.ViewStub in project android_frameworks_base by ParanoidAndroid.

the class ViewStubTest method testInflatedId.

@UiThreadTest
@MediumTest
public void testInflatedId() throws Exception {
    final StubbedView activity = getActivity();
    final ViewStub stub = (ViewStub) activity.findViewById(R.id.viewStubWithId);
    final View swapped = stub.inflate();
    assertNotNull("The inflated view is null", swapped);
    assertTrue("The inflated view has no id", swapped.getId() != View.NO_ID);
    assertTrue("The inflated view has the wrong id", swapped.getId() == R.id.stub_inflated);
}
Also used : ViewStub(android.view.ViewStub) StubbedView(android.view.StubbedView) StubbedView(android.view.StubbedView) View(android.view.View) UiThreadTest(android.test.UiThreadTest) MediumTest(android.test.suitebuilder.annotation.MediumTest)

Example 13 with ViewStub

use of android.view.ViewStub in project android_frameworks_base by ParanoidAndroid.

the class PhoneStatusBar method makeStatusBarView.

// ================================================================================
// Constructing the view
// ================================================================================
protected PhoneStatusBarView makeStatusBarView() {
    final Context context = mContext;
    Resources res = context.getResources();
    // populates mDisplayMetrics
    updateDisplaySize();
    loadDimens();
    mIconSize = res.getDimensionPixelSize(com.android.internal.R.dimen.status_bar_icon_size);
    mStatusBarWindow = (StatusBarWindowView) View.inflate(context, R.layout.super_status_bar, null);
    mStatusBarWindow.mService = this;
    mStatusBarWindow.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if (event.getAction() == MotionEvent.ACTION_DOWN) {
                if (mExpandedVisible) {
                    animateCollapsePanels();
                }
            }
            return mStatusBarWindow.onTouchEvent(event);
        }
    });
    mStatusBarView = (PhoneStatusBarView) mStatusBarWindow.findViewById(R.id.status_bar);
    mStatusBarView.setStatusBar(this);
    mStatusBarView.setBar(this);
    mBarView = (ViewGroup) mStatusBarView;
    // status bar clock
    mClock = (Clock) mStatusBarView.findViewById(R.id.clock);
    PanelHolder holder = (PanelHolder) mStatusBarWindow.findViewById(R.id.panel_holder);
    mStatusBarView.setPanelHolder(holder);
    mNotificationPanel = (NotificationPanelView) mStatusBarWindow.findViewById(R.id.notification_panel);
    mNotificationPanel.setStatusBar(this);
    mNotificationPanelIsFullScreenWidth = (mNotificationPanel.getLayoutParams().width == ViewGroup.LayoutParams.MATCH_PARENT);
    // make the header non-responsive to clicks
    mNotificationPanel.findViewById(R.id.header).setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // e eats everything
            return true;
        }
    });
    if (!ActivityManager.isHighEndGfx()) {
        mStatusBarWindow.setBackground(null);
        mNotificationPanel.setBackground(new FastColorDrawable(context.getResources().getColor(R.color.notification_panel_solid_background)));
    }
    if (ENABLE_INTRUDERS) {
        mIntruderAlertView = (IntruderAlertView) View.inflate(context, R.layout.intruder_alert, null);
        mIntruderAlertView.setVisibility(View.GONE);
        mIntruderAlertView.setBar(this);
    }
    if (MULTIUSER_DEBUG) {
        mNotificationPanelDebugText = (TextView) mNotificationPanel.findViewById(R.id.header_debug_info);
        mNotificationPanelDebugText.setVisibility(View.VISIBLE);
    }
    updateShowSearchHoldoff();
    try {
        boolean showNav = mWindowManagerService.hasNavigationBar();
        if (DEBUG)
            Slog.v(TAG, "hasNavigationBar=" + showNav);
        if (showNav && !mRecreating) {
            mNavigationBarView = (NavigationBarView) View.inflate(context, R.layout.navigation_bar, null);
            mNavigationBarView.setDisabledFlags(mDisabled);
            mNavigationBarView.setBar(this);
        }
    } catch (RemoteException ex) {
    // no window manager? good luck with that
    }
    // set recents activity navigation bar view
    RecentsActivity.addNavigationCallback(mNavigationBarView);
    // figure out which pixel-format to use for the status bar.
    mPixelFormat = PixelFormat.TRANSLUCENT;
    mSystemIconArea = (LinearLayout) mStatusBarView.findViewById(R.id.system_icon_area);
    mStatusIcons = (LinearLayout) mStatusBarView.findViewById(R.id.statusIcons);
    mNotificationIcons = (IconMerger) mStatusBarView.findViewById(R.id.notificationIcons);
    mMoreIcon = mStatusBarView.findViewById(R.id.moreIcon);
    mNotificationIcons.setOverflowIndicator(mMoreIcon);
    mStatusBarContents = (LinearLayout) mStatusBarView.findViewById(R.id.status_bar_contents);
    mTickerView = mStatusBarView.findViewById(R.id.ticker);
    mPile = (NotificationRowLayout) mStatusBarWindow.findViewById(R.id.latestItems);
    mPile.setLayoutTransitionsEnabled(false);
    mPile.setLongPressListener(getNotificationLongClicker());
    // was: expanded.findViewById(R.id.notificationLinearLayout);
    mExpandedContents = mPile;
    mNotificationPanelHeader = mStatusBarWindow.findViewById(R.id.header);
    mClearButton = mStatusBarWindow.findViewById(R.id.clear_all_button);
    mClearButton.setOnClickListener(mClearButtonListener);
    mClearButton.setAlpha(0f);
    mClearButton.setVisibility(View.GONE);
    mClearButton.setEnabled(false);
    mDateView = (DateView) mStatusBarWindow.findViewById(R.id.date);
    mHasSettingsPanel = res.getBoolean(R.bool.config_hasSettingsPanel);
    mHasFlipSettings = res.getBoolean(R.bool.config_hasFlipSettingsPanel);
    mDateTimeView = mNotificationPanelHeader.findViewById(R.id.datetime);
    if (mDateTimeView != null) {
        mDateTimeView.setOnClickListener(mClockClickListener);
        mDateTimeView.setEnabled(true);
    }
    mSettingsButton = (ImageView) mStatusBarWindow.findViewById(R.id.settings_button);
    if (mSettingsButton != null) {
        mSettingsButton.setOnClickListener(mSettingsButtonListener);
        if (mHasSettingsPanel) {
            if (mStatusBarView.hasFullWidthNotifications()) {
                // the settings panel is hiding behind this button
                mSettingsButton.setImageResource(R.drawable.ic_notify_quicksettings);
                mSettingsButton.setVisibility(View.VISIBLE);
            } else {
                // there is a settings panel, but it's on the other side of the (large) screen
                final View buttonHolder = mStatusBarWindow.findViewById(R.id.settings_button_holder);
                if (buttonHolder != null) {
                    buttonHolder.setVisibility(View.GONE);
                }
            }
        } else {
            // no settings panel, go straight to settings
            mSettingsButton.setVisibility(View.VISIBLE);
            mSettingsButton.setImageResource(R.drawable.ic_notify_settings);
        }
    }
    mHaloButton = (ImageView) mStatusBarWindow.findViewById(R.id.halo_button);
    if (mHaloButton != null) {
        mHaloButton.setOnClickListener(mHaloButtonListener);
        mHaloButtonVisible = true;
        updateHaloButton();
    }
    if (mHasFlipSettings) {
        mNotificationButton = (ImageView) mStatusBarWindow.findViewById(R.id.notification_button);
        if (mNotificationButton != null) {
            mNotificationButton.setOnClickListener(mNotificationButtonListener);
        }
    }
    mScrollView = (ScrollView) mStatusBarWindow.findViewById(R.id.scroll);
    // less drawing during pulldowns
    mScrollView.setVerticalScrollBarEnabled(false);
    if (!mNotificationPanelIsFullScreenWidth) {
        mScrollView.setSystemUiVisibility(View.STATUS_BAR_DISABLE_NOTIFICATION_TICKER | View.STATUS_BAR_DISABLE_NOTIFICATION_ICONS | View.STATUS_BAR_DISABLE_CLOCK);
    }
    mTicker = new MyTicker(context, mStatusBarView);
    TickerView tickerView = (TickerView) mStatusBarView.findViewById(R.id.tickerText);
    tickerView.mTicker = mTicker;
    if (mHaloActive)
        mTickerView.setVisibility(View.GONE);
    mEdgeBorder = res.getDimensionPixelSize(R.dimen.status_bar_edge_ignore);
    // set the inital view visibility
    setAreThereNotifications();
    // Other icons
    // will post a notification
    mLocationController = new LocationController(mContext);
    mBatteryController = new BatteryController(mContext);
    mBatteryController.addIconView((ImageView) mStatusBarView.findViewById(R.id.battery));
    mNetworkController = new NetworkController(mContext);
    mBluetoothController = new BluetoothController(mContext);
    mSignalCluster = (SignalClusterView) mStatusBarView.findViewById(R.id.signal_cluster);
    mNetworkController.addSignalCluster(mSignalCluster);
    mSignalCluster.setNetworkController(mNetworkController);
    mHasDockBattery = mContext.getResources().getBoolean(com.android.internal.R.bool.config_hasDockBattery);
    if (mHasDockBattery) {
        mDockBatteryController = new DockBatteryController(mContext);
        mDockBatteryController.addIconView((ImageView) mStatusBarView.findViewById(R.id.dock_battery));
    }
    final boolean isAPhone = mNetworkController.hasVoiceCallingFeature();
    if (isAPhone) {
        mEmergencyCallLabel = (TextView) mStatusBarWindow.findViewById(R.id.emergency_calls_only);
        if (mEmergencyCallLabel != null) {
            mNetworkController.addEmergencyLabelView(mEmergencyCallLabel);
            mEmergencyCallLabel.setOnClickListener(new View.OnClickListener() {

                public void onClick(View v) {
                }
            });
            mEmergencyCallLabel.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {

                @Override
                public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
                    updateCarrierLabelVisibility(false);
                }
            });
        }
    }
    mCarrierLabel = (TextView) mStatusBarWindow.findViewById(R.id.carrier_label);
    mShowCarrierInPanel = (mCarrierLabel != null);
    if (DEBUG)
        Slog.v(TAG, "carrierlabel=" + mCarrierLabel + " show=" + mShowCarrierInPanel);
    if (mShowCarrierInPanel) {
        mCarrierLabel.setVisibility(mCarrierLabelVisible ? View.VISIBLE : View.INVISIBLE);
        // for other devices, we show whatever network is connected
        if (mNetworkController.hasMobileDataFeature()) {
            mNetworkController.addMobileLabelView(mCarrierLabel);
        } else {
            mNetworkController.addCombinedLabelView(mCarrierLabel);
        }
        // set up the dynamic hide/show of the label
        mPile.setOnSizeChangedListener(new OnSizeChangedListener() {

            @Override
            public void onSizeChanged(View view, int w, int h, int oldw, int oldh) {
                updateCarrierLabelVisibility(false);
            }
        });
    }
    // Quick Settings (where available, some restrictions apply)
    if (mHasSettingsPanel) {
        // first, figure out where quick settings should be inflated
        final View settings_stub;
        if (mHasFlipSettings) {
            // a version of quick settings that flips around behind the notifications
            settings_stub = mStatusBarWindow.findViewById(R.id.flip_settings_stub);
            if (settings_stub != null) {
                mFlipSettingsView = ((ViewStub) settings_stub).inflate();
                mFlipSettingsView.setVisibility(View.GONE);
                mFlipSettingsView.setVerticalScrollBarEnabled(false);
            }
        } else {
            // full quick settings panel
            settings_stub = mStatusBarWindow.findViewById(R.id.quick_settings_stub);
            if (settings_stub != null) {
                mSettingsPanel = (SettingsPanelView) ((ViewStub) settings_stub).inflate();
            } else {
                mSettingsPanel = (SettingsPanelView) mStatusBarWindow.findViewById(R.id.settings_panel);
            }
            if (mSettingsPanel != null) {
                if (!ActivityManager.isHighEndGfx()) {
                    mSettingsPanel.setBackground(new FastColorDrawable(context.getResources().getColor(R.color.notification_panel_solid_background)));
                }
            }
        }
        // wherever you find it, Quick Settings needs a container to survive
        mSettingsContainer = (QuickSettingsContainerView) mStatusBarWindow.findViewById(R.id.quick_settings_container);
        // wherever you find it, Quick Settings needs a container to survive
        mSettingsContainer = (QuickSettingsContainerView) mStatusBarWindow.findViewById(R.id.quick_settings_container);
        if (mSettingsContainer != null) {
            mQS = new QuickSettingsController(mContext, mSettingsContainer, this);
            if (mSettingsPanel != null) {
                mSettingsPanel.setQuickSettings(mQS);
            }
            mQS.setService(this);
            mQS.setBar(mStatusBarView);
            mQS.setupQuickSettings();
            // Start observing for changes
            mTilesChangedObserver = new TilesChangedObserver(mHandler);
            mTilesChangedObserver.startObserving();
        } else {
            // fly away, be free
            mQS = null;
        }
    }
    mClingShown = !(DEBUG_CLINGS || !Prefs.read(mContext).getBoolean(Prefs.SHOWN_QUICK_SETTINGS_HELP, false));
    if (!ENABLE_NOTIFICATION_PANEL_CLING || ActivityManager.isRunningInTestHarness()) {
        mClingShown = true;
    }
    //        final ImageView wimaxRSSI =
    //                (ImageView)sb.findViewById(R.id.wimax_signal);
    //        if (wimaxRSSI != null) {
    //            mNetworkController.addWimaxIconView(wimaxRSSI);
    //        }
    // receive broadcasts
    IntentFilter filter = new IntentFilter();
    filter.addAction(Intent.ACTION_CONFIGURATION_CHANGED);
    filter.addAction(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
    filter.addAction(Intent.ACTION_SCREEN_OFF);
    filter.addAction(Intent.ACTION_SCREEN_ON);
    context.registerReceiver(mBroadcastReceiver, filter);
    // listen for USER_SETUP_COMPLETE setting (per-user)
    resetUserSetupObserver();
    return mStatusBarView;
}
Also used : LocationController(com.android.systemui.statusbar.policy.LocationController) BluetoothController(com.android.systemui.statusbar.policy.BluetoothController) DockBatteryController(com.android.systemui.statusbar.policy.DockBatteryController) BatteryController(com.android.systemui.statusbar.policy.BatteryController) Context(android.content.Context) IntentFilter(android.content.IntentFilter) DockBatteryController(com.android.systemui.statusbar.policy.DockBatteryController) OnSizeChangedListener(com.android.systemui.statusbar.policy.OnSizeChangedListener) IntruderAlertView(com.android.systemui.statusbar.policy.IntruderAlertView) ImageView(android.widget.ImageView) DateView(com.android.systemui.statusbar.policy.DateView) View(android.view.View) TextView(android.widget.TextView) SignalClusterView(com.android.systemui.statusbar.SignalClusterView) StatusBarIconView(com.android.systemui.statusbar.StatusBarIconView) ScrollView(android.widget.ScrollView) Point(android.graphics.Point) MotionEvent(android.view.MotionEvent) NetworkController(com.android.systemui.statusbar.policy.NetworkController) ViewStub(android.view.ViewStub) Resources(android.content.res.Resources) RemoteException(android.os.RemoteException)

Example 14 with ViewStub

use of android.view.ViewStub in project KeepScore by nolanlawson.

the class PlayerView method init.

private void init() {
    // enable or disable onscreen delta buttons based on whether we have
    // enough room onscreen or not
    deltaButtonsViewStub = view.findViewById(R.id.onscreen_delta_buttons_stub);
    if (deltaButtonsViewStub != null) {
        // they're null in portrait mode
        int versionInt = VersionHelper.getVersionSdkIntCompat();
        if (versionInt > VersionHelper.VERSION_DONUT && versionInt < VersionHelper.VERSION_FROYO) {
            // render correctly, so inflate the ViewStubs no matter what
            if (deltaButtonsViewStub instanceof ViewStub) {
                deltaButtonsViewStub = ((ViewStub) deltaButtonsViewStub).inflate();
            }
        }
        deltaButtonsViewStub.setVisibility(showOnscreenDeltaButtons ? View.VISIBLE : View.GONE);
        onscreenDeltaButtonsLayout = (LinearLayout) view.findViewById(R.id.onscreen_delta_buttons_table_layout);
    }
    playerColorView = (PlayerColorView) view.findViewById(R.id.player_color_image);
    tagImageView = (ImageView) view.findViewById(R.id.image_name_tag);
    divider1 = view.findViewById(R.id.player_score_divider_1);
    divider2 = view.findViewById(R.id.player_score_divider_2);
    nameTextView = (AutoResizeTextView) view.findViewById(R.id.text_name);
    scoreTextView = (AutoResizeTextView) view.findViewById(R.id.text_score);
    scoreTextView.resizeText();
    historyTextView = (TextView) view.findViewById(R.id.text_history);
    badgeTextView = (TextView) view.findViewById(R.id.text_badge);
    badgeLinearLayout = (LinearLayout) view.findViewById(R.id.linear_layout_badge);
    minusButton = (Button) view.findViewById(R.id.button_minus);
    plusButton = (Button) view.findViewById(R.id.button_plus);
    deltaButton1 = (Button) view.findViewById(android.R.id.button1);
    deltaButton2 = (Button) view.findViewById(android.R.id.button2);
    deltaButton3 = (Button) view.findViewById(android.R.id.button3);
    deltaButton4 = (Button) view.findViewById(R.id.button4);
    deltaButtons = new Button[] { deltaButton1, deltaButton2, deltaButton3, deltaButton4 };
    for (Button deltaButton : deltaButtons) {
        if (deltaButton != null) {
            deltaButton.setOnClickListener(this);
        }
    }
    minusButton.setOnClickListener(this);
    minusButton.setOnLongClickListener(this);
    plusButton.setOnClickListener(this);
    plusButton.setOnLongClickListener(this);
    historyTextView.setOnClickListener(this);
    historyTextView.setOnLongClickListener(this);
    badgeLinearLayout.setOnClickListener(this);
    ColorScheme colorScheme = PreferenceHelper.getColorScheme(context);
    setNewColorScheme(colorScheme);
    updateViews();
    log.d("history is: %s", playerScore.getHistory());
}
Also used : ViewStub(android.view.ViewStub) Button(android.widget.Button) ColorScheme(com.nolanlawson.keepscore.helper.ColorScheme)

Example 15 with ViewStub

use of android.view.ViewStub in project Calligraphy by chrisjenx.

the class PlaceholderFragment method onViewCreated.

@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    ButterKnife.bind(this, view);
    ViewStub stub = ButterKnife.findById(view, R.id.stub);
    stub.inflate();
    ViewStub stubWithFontPath = ButterKnife.findById(view, R.id.stub_with_font_path);
    stubWithFontPath.inflate();
}
Also used : ViewStub(android.view.ViewStub)

Aggregations

ViewStub (android.view.ViewStub)79 View (android.view.View)46 UiThreadTest (android.test.UiThreadTest)18 MediumTest (android.test.suitebuilder.annotation.MediumTest)18 StubbedView (android.view.StubbedView)18 TextView (android.widget.TextView)8 StandaloneActionMode (com.actionbarsherlock.internal.view.StandaloneActionMode)7 ActionMode (com.actionbarsherlock.view.ActionMode)7 Context (android.content.Context)6 Resources (android.content.res.Resources)6 ContextThemeWrapper (android.view.ContextThemeWrapper)6 Animator (android.animation.Animator)5 AnimatorListenerAdapter (android.animation.AnimatorListenerAdapter)5 ObjectAnimator (android.animation.ObjectAnimator)5 Paint (android.graphics.Paint)5 TypedValue (android.util.TypedValue)5 ActionMode (android.view.ActionMode)5 PopupWindow (android.widget.PopupWindow)5 FloatingActionMode (com.android.internal.view.FloatingActionMode)5 StandaloneActionMode (com.android.internal.view.StandaloneActionMode)5