android.widget.ToggleButton

Here are the examples of the java api class android.widget.ToggleButton taken from open source projects.

1. ToggleButtonViewSample#createViews()

Project: pixate-freestyle-android
File: ToggleButtonViewSample.java
@Override
public void createViews(Context context, ViewGroup layout) {
    ToggleButton tb = new ToggleButton(context);
    tb.setText("Vibrate off");
    tb.setTextOff("Vibrate Off");
    tb.setTextOn("Vibrate On");
    PixateFreestyle.setStyleClass(tb, "myToggleButton");
    layout.addView(tb, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    addView(tb);
}

2. MainActivity#initToggleButton()

Project: BrokenView
File: MainActivity.java
private void initToggleButton() {
    ToggleButton effectBtn = (ToggleButton) findViewById(R.id.toggle_effect);
    ToggleButton callbackBtn = (ToggleButton) findViewById(R.id.toggle_callback);
    final BrokenCallback callback = new MyCallBack();
    CompoundButton.OnCheckedChangeListener listener = new CompoundButton.OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isOpen) {
            switch(buttonView.getId()) {
                case R.id.toggle_effect:
                    effectEnable = isOpen;
                    break;
                case R.id.toggle_callback:
                    mBrokenView.setCallback(isOpen ? callback : null);
                    break;
            }
        }
    };
    effectBtn.setOnCheckedChangeListener(listener);
    callbackBtn.setOnCheckedChangeListener(listener);
}

3. DetermineMovementActivity#onReadAccelerationDataToggleButtonClicked()

Project: gast-lib
File: DetermineMovementActivity.java
public void onReadAccelerationDataToggleButtonClicked(View view) {
    ToggleButton toggleButton = (ToggleButton) view;
    if (toggleButton.isChecked()) {
        startReadingAccelerationData();
    } else {
        stopReadingAccelerationData();
    }
}

4. LightSwitchActivity#onCreate()

Project: codeexamples-android
File: LightSwitchActivity.java
@Override
public void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    if (BuildConfig.DEBUG) {
        Log.i("CATEGORY", "AHHHHH!!!");
    }
    final ImageView image = (ImageView) findViewById(R.id.image);
    final ToggleButton button = (ToggleButton) findViewById(R.id.button);
    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(final View v) {
            TransitionDrawable drawable = (TransitionDrawable) image.getDrawable();
            if (button.isChecked()) {
                drawable.startTransition(1000);
            } else {
                drawable.reverseTransition(1000);
            }
        }
    });
}

5. LightSwitchActivity#onCreate()

Project: codeexamples-android
File: LightSwitchActivity.java
@Override
public void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    final ImageView image = (ImageView) findViewById(R.id.image);
    final ToggleButton button = (ToggleButton) findViewById(R.id.button);
    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(final View v) {
            TransitionDrawable drawable = (TransitionDrawable) image.getDrawable();
            if (button.isChecked()) {
                drawable.startTransition(1000);
            } else {
                drawable.reverseTransition(1000);
            }
        }
    });
}

6. TemperatureActivity#temperatureControlUpdated()

Project: aws-sdk-android-samples
File: TemperatureActivity.java
public void temperatureControlUpdated(String temperatureControlState) {
    Gson gson = new Gson();
    TemperatureControl tc = gson.fromJson(temperatureControlState, TemperatureControl.class);
    Log.i(LOG_TAG, String.format("setPoint: %d", tc.state.desired.setPoint));
    Log.i(LOG_TAG, String.format("enabled: %b", tc.state.desired.enabled));
    NumberPicker np = (NumberPicker) findViewById(R.id.setpoint);
    np.setValue(tc.state.desired.setPoint);
    ToggleButton tb = (ToggleButton) findViewById(R.id.enableButton);
    tb.setChecked(tc.state.desired.enabled);
}

7. DateAndTimePicker#forceDateSelected()

Project: astrid
File: DateAndTimePicker.java
private void forceDateSelected() {
    ToggleButton none = (ToggleButton) dateShortcuts.getChildAt(dateShortcuts.getChildCount() - 1);
    if (none.isChecked()) {
        Date date = new Date(todayUrgency.dueDate);
        calendarView.setCalendarDate(date);
        calendarView.invalidate();
        if (todayUrgency.setting == Task.URGENCY_NONE)
            timePicker.forceNoTime();
        updateShortcutView(date);
        otherCallbacks();
    }
}

8. MainActivity#initFlashlightButton()

Project: AndroidDemoProjects
File: MainActivity.java
private void initFlashlightButton() {
    ToggleButton button = (ToggleButton) findViewById(R.id.button_flashlight);
    button.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) {
                if (mFlashlightOn)
                    deactivateFlashlight();
                else
                    activateFlashlight();
            }
        }
    });
}

9. MainActivity#onCreate()

Project: android-flat-button
File: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    twitterBtn = (FButton) findViewById(R.id.f_twitter_button);
    disabledBtn = (FButton) findViewById(R.id.disabled_button);
    Button changeColorBtn = (Button) findViewById(R.id.change_color_button);
    ToggleButton shadowSwitch = (ToggleButton) findViewById(R.id.enable_shadow_switch);
    shadowHeightBar = (SeekBar) findViewById(R.id.shadow_height_seekbar);
    shadowHeight = (TextView) findViewById(R.id.shadow_height_value);
    changeColorBtn.setOnClickListener(this);
    shadowSwitch.setOnCheckedChangeListener(this);
    shadowHeightBar.setOnSeekBarChangeListener(this);
    //Config disabled button
    disabledBtn.setButtonColor(getResources().getColor(R.color.fbutton_color_concrete));
    disabledBtn.setShadowEnabled(true);
    disabledBtn.setShadowHeight(5);
    disabledBtn.setCornerRadius(5);
}

10. TemperatureActivity#enableDisableClicked()

Project: aws-sdk-android-samples
File: TemperatureActivity.java
public void enableDisableClicked(View view) {
    ToggleButton tb = (ToggleButton) findViewById(R.id.enableButton);
    Log.i(LOG_TAG, String.format("System %s", tb.isChecked() ? "enabled" : "disabled"));
    UpdateShadowTask updateShadowTask = new UpdateShadowTask();
    updateShadowTask.setThingName("TemperatureControl");
    String newState = String.format("{\"state\":{\"desired\":{\"enabled\":%s}}}", tb.isChecked() ? "true" : "false");
    Log.i(LOG_TAG, newState);
    updateShadowTask.setState(newState);
    updateShadowTask.execute();
}

11. EditorFragment#setupFormatBarButtonMap()

Project: WordPress-Android
File: EditorFragment.java
private void setupFormatBarButtonMap(View view) {
    ToggleButton boldButton = (ToggleButton) view.findViewById(R.id.format_bar_button_bold);
    mTagToggleButtonMap.put(getString(R.string.format_bar_tag_bold), boldButton);
    ToggleButton italicButton = (ToggleButton) view.findViewById(R.id.format_bar_button_italic);
    mTagToggleButtonMap.put(getString(R.string.format_bar_tag_italic), italicButton);
    ToggleButton quoteButton = (ToggleButton) view.findViewById(R.id.format_bar_button_quote);
    mTagToggleButtonMap.put(getString(R.string.format_bar_tag_blockquote), quoteButton);
    ToggleButton ulButton = (ToggleButton) view.findViewById(R.id.format_bar_button_ul);
    mTagToggleButtonMap.put(getString(R.string.format_bar_tag_unorderedList), ulButton);
    ToggleButton olButton = (ToggleButton) view.findViewById(R.id.format_bar_button_ol);
    mTagToggleButtonMap.put(getString(R.string.format_bar_tag_orderedList), olButton);
    // Tablet-only
    ToggleButton strikethroughButton = (ToggleButton) view.findViewById(R.id.format_bar_button_strikethrough);
    if (strikethroughButton != null) {
        mTagToggleButtonMap.put(getString(R.string.format_bar_tag_strikethrough), strikethroughButton);
    }
    ToggleButton mediaButton = (ToggleButton) view.findViewById(R.id.format_bar_button_media);
    mTagToggleButtonMap.put(TAG_FORMAT_BAR_BUTTON_MEDIA, mediaButton);
    registerForContextMenu(mediaButton);
    ToggleButton linkButton = (ToggleButton) view.findViewById(R.id.format_bar_button_link);
    mTagToggleButtonMap.put(TAG_FORMAT_BAR_BUTTON_LINK, linkButton);
    ToggleButton htmlButton = (ToggleButton) view.findViewById(R.id.format_bar_button_html);
    htmlButton.setOnClickListener(this);
    for (ToggleButton button : mTagToggleButtonMap.values()) {
        button.setOnClickListener(this);
    }
}

12. EditorFragmentTest#testFormatBarToggledOnSelectedFieldChanged()

Project: WordPress-Android
File: EditorFragmentTest.java
public void testFormatBarToggledOnSelectedFieldChanged() {
    Map<String, String> selectionArgs = new HashMap<>();
    selectionArgs.put("id", "zss_field_title");
    mFragment.onSelectionChanged(selectionArgs);
    waitFor(100);
    View view = mFragment.getView();
    if (view == null) {
        throw (new IllegalStateException("Fragment view is empty"));
    }
    // The formatting buttons should be disabled while the title field is selected
    ToggleButton mediaButton = (ToggleButton) view.findViewById(R.id.format_bar_button_media);
    ToggleButton boldButton = (ToggleButton) view.findViewById(R.id.format_bar_button_bold);
    ToggleButton italicButton = (ToggleButton) view.findViewById(R.id.format_bar_button_italic);
    ToggleButton quoteButton = (ToggleButton) view.findViewById(R.id.format_bar_button_quote);
    ToggleButton ulButton = (ToggleButton) view.findViewById(R.id.format_bar_button_ul);
    ToggleButton olButton = (ToggleButton) view.findViewById(R.id.format_bar_button_ol);
    ToggleButton linkButton = (ToggleButton) view.findViewById(R.id.format_bar_button_link);
    ToggleButton strikethroughButton = (ToggleButton) view.findViewById(R.id.format_bar_button_strikethrough);
    assertFalse(mediaButton.isEnabled());
    assertFalse(boldButton.isEnabled());
    assertFalse(italicButton.isEnabled());
    assertFalse(quoteButton.isEnabled());
    assertFalse(ulButton.isEnabled());
    assertFalse(olButton.isEnabled());
    assertFalse(linkButton.isEnabled());
    if (strikethroughButton != null) {
        assertFalse(strikethroughButton.isEnabled());
    }
    // The HTML button should always be enabled
    ToggleButton htmlButton = (ToggleButton) view.findViewById(R.id.format_bar_button_html);
    assertTrue(htmlButton.isEnabled());
    selectionArgs.clear();
    selectionArgs.put("id", "zss_field_content");
    mFragment.onSelectionChanged(selectionArgs);
    waitFor(100);
    // The formatting buttons should be enabled while the content field is selected
    assertTrue(mediaButton.isEnabled());
    assertTrue(boldButton.isEnabled());
    assertTrue(italicButton.isEnabled());
    assertTrue(quoteButton.isEnabled());
    assertTrue(ulButton.isEnabled());
    assertTrue(olButton.isEnabled());
    assertTrue(linkButton.isEnabled());
    if (strikethroughButton != null) {
        assertTrue(strikethroughButton.isEnabled());
    }
    // The HTML button should always be enabled
    assertTrue(htmlButton.isEnabled());
}

13. MainActivity#onCreate()

Project: fresco
File: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    FLog.setMinimumLoggingLevel(FLog.VERBOSE);
    Set<RequestListener> listeners = new HashSet<>();
    listeners.add(new RequestLoggingListener());
    ImagePipelineConfig config = ImagePipelineConfig.newBuilder(this).setRequestListeners(listeners).setBitmapsConfig(Bitmap.Config.ARGB_8888).build();
    Fresco.initialize(this, config);
    setContentView(R.layout.activity_main);
    final ToggleButton gifToggle = (ToggleButton) findViewById(R.id.toggle_gif);
    gifToggle.setEnabled(false);
    mAnimatedGifView = (SimpleDraweeView) findViewById(R.id.animated_gif);
    Uri animatedGifUri = Uri.parse("http://s3.amazonaws.com/giphygifs/media/4aBQ9oNjgEQ2k/giphy.gif");
    DraweeController gifController = Fresco.newDraweeControllerBuilder().setUri(animatedGifUri).setControllerListener(new BaseControllerListener<ImageInfo>() {

        @Override
        public void onFinalImageSet(String id, ImageInfo imageInfo, Animatable anim) {
            if (anim != null) {
                animatableGif = anim;
                // app-specific logic to enable animation starting
                gifToggle.setEnabled(true);
            }
        }
    }).build();
    mAnimatedGifView.setController(gifController);
    gifToggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (animatableGif == null) {
                return;
            }
            if (isChecked) {
                animatableGif.start();
            } else {
                animatableGif.stop();
            }
        }
    });
    final ToggleButton webpToggle = (ToggleButton) findViewById(R.id.toggle_webp);
    webpToggle.setEnabled(false);
    mAnimatedWebpView = (SimpleDraweeView) findViewById(R.id.animated_webp);
    Uri animatedWebpUri = Uri.parse("http://www.gstatic.com/webp/animated/1.webp");
    DraweeController webpController = Fresco.newDraweeControllerBuilder().setUri(animatedWebpUri).setControllerListener(new BaseControllerListener<ImageInfo>() {

        @Override
        public void onFinalImageSet(String id, ImageInfo imageInfo, Animatable anim) {
            if (anim != null) {
                animatableWebp = anim;
                // app-specific logic to enable animation starting
                webpToggle.setEnabled(true);
            }
        }
    }).build();
    mAnimatedWebpView.setController(webpController);
    webpToggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (animatableWebp == null) {
                return;
            }
            if (isChecked) {
                animatableWebp.start();
            } else {
                animatableWebp.stop();
            }
        }
    });
}

14. AudioRecordingActivity#onCreate()

Project: coursera-android
File: AudioRecordingActivity.java
@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    setContentView(R.layout.main);
    final ToggleButton mRecordButton = (ToggleButton) findViewById(R.id.record_button);
    final ToggleButton mPlayButton = (ToggleButton) findViewById(R.id.play_button);
    // Set up record Button
    mRecordButton.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            // Set enabled state
            mPlayButton.setEnabled(!isChecked);
            // Start/stop recording
            onRecordPressed(isChecked);
        }
    });
    // Set up play Button
    mPlayButton.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            // Set enabled state
            mRecordButton.setEnabled(!isChecked);
            // Start/stop playback
            onPlayPressed(isChecked);
        }
    });
    // Get AudioManager
    mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
    // Request audio focus
    mAudioManager.requestAudioFocus(afChangeListener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN);
}

15. StreamerActivity#onCreate()

Project: yt-watchme
File: StreamerActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
    Log.d(MainActivity.APP_NAME, "onCreate");
    super.onCreate(savedInstanceState);
    broadcastId = getIntent().getStringExtra(YouTubeApi.BROADCAST_ID_KEY);
    //Log.v(MainActivity.APP_NAME, broadcastId);
    rtmpUrl = getIntent().getStringExtra(YouTubeApi.RTMP_URL_KEY);
    if (rtmpUrl == null) {
        Log.w(MainActivity.APP_NAME, "No RTMP URL was passed in; bailing.");
        finish();
    }
    Log.i(MainActivity.APP_NAME, String.format("Got RTMP URL '%s' from calling activity.", rtmpUrl));
    setContentView(R.layout.streamer);
    preview = (Preview) findViewById(R.id.surfaceViewPreview);
    if (!bindService(new Intent(this, StreamerService.class), streamerConnection, BIND_AUTO_CREATE | BIND_DEBUG_UNBIND)) {
        Log.e(MainActivity.APP_NAME, "Failed to bind StreamerService!");
    }
    final ToggleButton toggleButton = (ToggleButton) findViewById(R.id.toggleBroadcasting);
    toggleButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            if (toggleButton.isChecked()) {
                streamerService.startStreaming(rtmpUrl);
            } else {
                streamerService.stopStreaming();
            }
        }
    });
}

16. CropperSample#onCreate()

Project: UltimateAndroid
File: CropperSample.java
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.cropper_activity);
    // Sets fonts for all
    Typeface mFont = Typeface.createFromAsset(getAssets(), "Roboto-Thin.ttf");
    ViewGroup root = (ViewGroup) findViewById(R.id.mylayout);
    setFont(root, mFont);
    // Initialize components of the app
    final CropImageView cropImageView = (CropImageView) findViewById(R.id.CropImageView);
    final SeekBar aspectRatioXSeek = (SeekBar) findViewById(R.id.aspectRatioXSeek);
    final SeekBar aspectRatioYSeek = (SeekBar) findViewById(R.id.aspectRatioYSeek);
    final ToggleButton fixedAspectRatioToggle = (ToggleButton) findViewById(R.id.fixedAspectRatioToggle);
    Spinner showGuidelinesSpin = (Spinner) findViewById(R.id.showGuidelinesSpin);
    // Sets sliders to be disabled until fixedAspectRatio is set
    aspectRatioXSeek.setEnabled(false);
    aspectRatioYSeek.setEnabled(false);
    // Set initial spinner value
    showGuidelinesSpin.setSelection(ON_TOUCH);
    //Sets the rotate button
    final Button rotateButton = (Button) findViewById(R.id.Button_rotate);
    rotateButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            cropImageView.rotateImage(ROTATE_NINETY_DEGREES);
        }
    });
    // Sets fixedAspectRatio
    fixedAspectRatioToggle.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            cropImageView.setFixedAspectRatio(isChecked);
            if (isChecked) {
                aspectRatioXSeek.setEnabled(true);
                aspectRatioYSeek.setEnabled(true);
            } else {
                aspectRatioXSeek.setEnabled(false);
                aspectRatioYSeek.setEnabled(false);
            }
        }
    });
    // Sets initial aspect ratio to 10/10, for demonstration purposes
    cropImageView.setAspectRatio(DEFAULT_ASPECT_RATIO_VALUES, DEFAULT_ASPECT_RATIO_VALUES);
    // Sets aspectRatioX
    final TextView aspectRatioX = (TextView) findViewById(R.id.aspectRatioX);
    aspectRatioXSeek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar aspectRatioXSeek, int progress, boolean fromUser) {
            try {
                mAspectRatioX = progress;
                cropImageView.setAspectRatio(progress, mAspectRatioY);
                aspectRatioX.setText(" " + progress);
            } catch (IllegalArgumentException e) {
            }
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
        }
    });
    // Sets aspectRatioY
    final TextView aspectRatioY = (TextView) findViewById(R.id.aspectRatioY);
    aspectRatioYSeek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar aspectRatioYSeek, int progress, boolean fromUser) {
            try {
                mAspectRatioY = progress;
                cropImageView.setAspectRatio(mAspectRatioX, progress);
                aspectRatioY.setText(" " + progress);
            } catch (IllegalArgumentException e) {
            }
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
        }
    });
    // Sets up the Spinner
    showGuidelinesSpin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            cropImageView.setGuidelines(i);
        }

        public void onNothingSelected(AdapterView<?> adapterView) {
            return;
        }
    });
    final Button cropButton = (Button) findViewById(R.id.Button_crop);
    cropButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            croppedImage = cropImageView.getCroppedImage();
            ImageView croppedImageView = (ImageView) findViewById(R.id.croppedImageView);
            croppedImageView.setImageBitmap(croppedImage);
        }
    });
}

17. CropperSample#onCreate()

Project: UltimateAndroid
File: CropperSample.java
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.cropper_activity);
    // Sets fonts for all
    Typeface mFont = Typeface.createFromAsset(getAssets(), "Roboto-Thin.ttf");
    ViewGroup root = (ViewGroup) findViewById(R.id.mylayout);
    setFont(root, mFont);
    // Initialize components of the app
    final CropImageView cropImageView = (CropImageView) findViewById(R.id.CropImageView);
    final SeekBar aspectRatioXSeek = (SeekBar) findViewById(R.id.aspectRatioXSeek);
    final SeekBar aspectRatioYSeek = (SeekBar) findViewById(R.id.aspectRatioYSeek);
    final ToggleButton fixedAspectRatioToggle = (ToggleButton) findViewById(R.id.fixedAspectRatioToggle);
    Spinner showGuidelinesSpin = (Spinner) findViewById(R.id.showGuidelinesSpin);
    // Sets sliders to be disabled until fixedAspectRatio is set
    aspectRatioXSeek.setEnabled(false);
    aspectRatioYSeek.setEnabled(false);
    // Set initial spinner value
    showGuidelinesSpin.setSelection(ON_TOUCH);
    //Sets the rotate button
    final Button rotateButton = (Button) findViewById(R.id.Button_rotate);
    rotateButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            cropImageView.rotateImage(ROTATE_NINETY_DEGREES);
        }
    });
    // Sets fixedAspectRatio
    fixedAspectRatioToggle.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            cropImageView.setFixedAspectRatio(isChecked);
            if (isChecked) {
                aspectRatioXSeek.setEnabled(true);
                aspectRatioYSeek.setEnabled(true);
            } else {
                aspectRatioXSeek.setEnabled(false);
                aspectRatioYSeek.setEnabled(false);
            }
        }
    });
    // Sets initial aspect ratio to 10/10, for demonstration purposes
    cropImageView.setAspectRatio(DEFAULT_ASPECT_RATIO_VALUES, DEFAULT_ASPECT_RATIO_VALUES);
    // Sets aspectRatioX
    final TextView aspectRatioX = (TextView) findViewById(R.id.aspectRatioX);
    aspectRatioXSeek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar aspectRatioXSeek, int progress, boolean fromUser) {
            try {
                mAspectRatioX = progress;
                cropImageView.setAspectRatio(progress, mAspectRatioY);
                aspectRatioX.setText(" " + progress);
            } catch (IllegalArgumentException e) {
            }
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
        }
    });
    // Sets aspectRatioY
    final TextView aspectRatioY = (TextView) findViewById(R.id.aspectRatioY);
    aspectRatioYSeek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar aspectRatioYSeek, int progress, boolean fromUser) {
            try {
                mAspectRatioY = progress;
                cropImageView.setAspectRatio(mAspectRatioX, progress);
                aspectRatioY.setText(" " + progress);
            } catch (IllegalArgumentException e) {
            }
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
        }
    });
    // Sets up the Spinner
    showGuidelinesSpin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            cropImageView.setGuidelines(i);
        }

        public void onNothingSelected(AdapterView<?> adapterView) {
            return;
        }
    });
    final Button cropButton = (Button) findViewById(R.id.Button_crop);
    cropButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            croppedImage = cropImageView.getCroppedImage();
            ImageView croppedImageView = (ImageView) findViewById(R.id.croppedImageView);
            croppedImageView.setImageBitmap(croppedImage);
        }
    });
}

18. MainActivity#onCreate()

Project: sticky-headers-recyclerview
File: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    final RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerview);
    Button button = (Button) findViewById(R.id.button_update);
    final ToggleButton isReverseButton = (ToggleButton) findViewById(R.id.button_is_reverse);
    // Set adapter populated with example dummy data
    final AnimalsHeadersAdapter adapter = new AnimalsHeadersAdapter();
    adapter.add("Animals below!");
    adapter.addAll(getDummyDataSet());
    recyclerView.setAdapter(adapter);
    // Set button to update all views one after another (Test for the "Dance")
    button.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Handler handler = new Handler(Looper.getMainLooper());
            for (int i = 0; i < adapter.getItemCount(); i++) {
                final int index = i;
                handler.postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        adapter.notifyItemChanged(index);
                    }
                }, 50);
            }
        }
    });
    // Set layout manager
    int orientation = getLayoutManagerOrientation(getResources().getConfiguration().orientation);
    final LinearLayoutManager layoutManager = new LinearLayoutManager(this, orientation, isReverseButton.isChecked());
    recyclerView.setLayoutManager(layoutManager);
    // Add the sticky headers decoration
    final StickyRecyclerHeadersDecoration headersDecor = new StickyRecyclerHeadersDecoration(adapter);
    recyclerView.addItemDecoration(headersDecor);
    // Add decoration for dividers between list items
    recyclerView.addItemDecoration(new DividerDecoration(this));
    // Add touch listeners
    StickyRecyclerHeadersTouchListener touchListener = new StickyRecyclerHeadersTouchListener(recyclerView, headersDecor);
    touchListener.setOnHeaderClickListener(new StickyRecyclerHeadersTouchListener.OnHeaderClickListener() {

        @Override
        public void onHeaderClick(View header, int position, long headerId) {
            Toast.makeText(MainActivity.this, "Header position: " + position + ", id: " + headerId, Toast.LENGTH_SHORT).show();
        }
    });
    recyclerView.addOnItemTouchListener(touchListener);
    recyclerView.addOnItemTouchListener(new RecyclerItemClickListener(this, new RecyclerItemClickListener.OnItemClickListener() {

        @Override
        public void onItemClick(View view, int position) {
            adapter.remove(adapter.getItem(position));
        }
    }));
    adapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {

        @Override
        public void onChanged() {
            headersDecor.invalidateHeaders();
        }
    });
    isReverseButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            boolean isChecked = isReverseButton.isChecked();
            isReverseButton.setChecked(isChecked);
            layoutManager.setReverseLayout(isChecked);
            adapter.notifyDataSetChanged();
        }
    });
}

19. MainActivity#onCreate()

Project: cropper
File: MainActivity.java
// Activity Methods ////////////////////////////////////////////////////////////////////////////
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_main);
    // Initialize Views.
    final ToggleButton fixedAspectRatioToggleButton = (ToggleButton) findViewById(R.id.fixedAspectRatioToggle);
    final TextView aspectRatioXTextView = (TextView) findViewById(R.id.aspectRatioX);
    final SeekBar aspectRatioXSeekBar = (SeekBar) findViewById(R.id.aspectRatioXSeek);
    final TextView aspectRatioYTextView = (TextView) findViewById(R.id.aspectRatioY);
    final SeekBar aspectRatioYSeekBar = (SeekBar) findViewById(R.id.aspectRatioYSeek);
    final Spinner guidelinesSpinner = (Spinner) findViewById(R.id.showGuidelinesSpin);
    final CropImageView cropImageView = (CropImageView) findViewById(R.id.CropImageView);
    final ImageView croppedImageView = (ImageView) findViewById(R.id.croppedImageView);
    final Button cropButton = (Button) findViewById(R.id.Button_crop);
    // Initializes fixedAspectRatio toggle button.
    fixedAspectRatioToggleButton.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            cropImageView.setFixedAspectRatio(isChecked);
            cropImageView.setAspectRatio(aspectRatioXSeekBar.getProgress(), aspectRatioYSeekBar.getProgress());
            aspectRatioXSeekBar.setEnabled(isChecked);
            aspectRatioYSeekBar.setEnabled(isChecked);
        }
    });
    // Set seek bars to be disabled until toggle button is checked.
    aspectRatioXSeekBar.setEnabled(false);
    aspectRatioYSeekBar.setEnabled(false);
    aspectRatioXTextView.setText(String.valueOf(aspectRatioXSeekBar.getProgress()));
    aspectRatioYTextView.setText(String.valueOf(aspectRatioXSeekBar.getProgress()));
    // Initialize aspect ratio X SeekBar.
    aspectRatioXSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar aspectRatioXSeekBar, int progress, boolean fromUser) {
            if (progress < 1) {
                aspectRatioXSeekBar.setProgress(1);
            }
            cropImageView.setAspectRatio(aspectRatioXSeekBar.getProgress(), aspectRatioYSeekBar.getProgress());
            aspectRatioXTextView.setText(String.valueOf(aspectRatioXSeekBar.getProgress()));
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        // Do nothing.
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
        // Do nothing.
        }
    });
    // Initialize aspect ratio Y SeekBar.
    aspectRatioYSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar aspectRatioYSeekBar, int progress, boolean fromUser) {
            if (progress < 1) {
                aspectRatioYSeekBar.setProgress(1);
            }
            cropImageView.setAspectRatio(aspectRatioXSeekBar.getProgress(), aspectRatioYSeekBar.getProgress());
            aspectRatioYTextView.setText(String.valueOf(aspectRatioYSeekBar.getProgress()));
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        // Do nothing.
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
        // Do nothing.
        }
    });
    // Set up the Guidelines Spinner.
    guidelinesSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            cropImageView.setGuidelines(i);
        }

        public void onNothingSelected(AdapterView<?> adapterView) {
        // Do nothing.
        }
    });
    guidelinesSpinner.setSelection(GUIDELINES_ON_TOUCH);
    // Initialize the Crop button.
    cropButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            final Bitmap croppedImage = cropImageView.getCroppedImage();
            croppedImageView.setImageBitmap(croppedImage);
        }
    });
}

20. ToggleButtonActivity#onCreate()

Project: coursera-android
File: ToggleButtonActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    // Get a reference to a background container 
    final LinearLayout bg = (LinearLayout) findViewById(R.id.linearlayout);
    // Get a reference to the ToggleButton
    final ToggleButton button = (ToggleButton) findViewById(R.id.togglebutton);
    // Set an OnClickListener on the ToggleButton
    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // Toggle the Background color between a light and dark color
            if (button.isChecked()) {
                bg.setBackgroundColor(0xFFF3F3F3);
            } else {
                bg.setBackgroundColor(0xFF000000);
            }
        }
    });
}

21. SamplerActivity#onCreate()

Project: coursera-android
File: SamplerActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    // 
    final ImageButton button = (ImageButton) findViewById(R.id.button);
    button.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // Show Toast message 
            Toast.makeText(SamplerActivity.this, "Beep Bop", Toast.LENGTH_SHORT).show();
        }
    });
    final EditText edittext = (EditText) findViewById(R.id.edittext);
    edittext.setOnKeyListener(new OnKeyListener() {

        public boolean onKey(View v, int keyCode, KeyEvent event) {
            // If the event is a key-down event on the "Done" button
            if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) {
                // Show Toast message 
                Toast.makeText(SamplerActivity.this, edittext.getText(), Toast.LENGTH_SHORT).show();
                return true;
            }
            return false;
        }
    });
    final CheckBox checkbox = (CheckBox) findViewById(R.id.checkbox);
    checkbox.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // Show Toast message indicating the CheckBox's Checked state
            if (((CheckBox) v).isChecked()) {
                Toast.makeText(SamplerActivity.this, "CheckBox checked", Toast.LENGTH_SHORT).show();
            } else {
                Toast.makeText(SamplerActivity.this, "CheckBox not checked", Toast.LENGTH_SHORT).show();
            }
        }
    });
    final RadioButton radio_red = (RadioButton) findViewById(R.id.radio_red);
    final RadioButton radio_blue = (RadioButton) findViewById(R.id.radio_blue);
    radio_red.setOnClickListener(radio_listener);
    radio_blue.setOnClickListener(radio_listener);
    final ToggleButton togglebutton = (ToggleButton) findViewById(R.id.togglebutton);
    togglebutton.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // Perform action on clicks
            if (togglebutton.isChecked()) {
                Toast.makeText(SamplerActivity.this, "ToggleButton checked", Toast.LENGTH_SHORT).show();
            } else {
                Toast.makeText(SamplerActivity.this, "ToggleButton not checked", Toast.LENGTH_SHORT).show();
            }
        }
    });
    final RatingBar ratingbar = (RatingBar) findViewById(R.id.ratingbar);
    ratingbar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {

        public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
            Toast.makeText(SamplerActivity.this, "New Rating: " + rating, Toast.LENGTH_SHORT).show();
        }
    });
}

22. ContentsBaseFragment#findToggleButtonByIdAndSetListener()

Project: android-openslmediaplayer
File: ContentsBaseFragment.java
protected ToggleButton findToggleButtonByIdAndSetListener(int id) {
    ToggleButton toggleButtton = findToggleButtonById(id);
    toggleButtton.setOnCheckedChangeListener((CompoundButton.OnCheckedChangeListener) this);
    return toggleButtton;
}

23. EditorFragment#clearFormatBarButtons()

Project: WordPress-Android
File: EditorFragment.java
private void clearFormatBarButtons() {
    for (ToggleButton button : mTagToggleButtonMap.values()) {
        if (button != null) {
            button.setChecked(false);
        }
    }
}

24. EditorFragment#updateFormatBarEnabledState()

Project: WordPress-Android
File: EditorFragment.java
void updateFormatBarEnabledState(boolean enabled) {
    float alpha = (enabled ? TOOLBAR_ALPHA_ENABLED : TOOLBAR_ALPHA_DISABLED);
    for (ToggleButton button : mTagToggleButtonMap.values()) {
        button.setEnabled(enabled);
        button.setAlpha(alpha);
    }
    mIsFormatBarDisabled = !enabled;
}

25. EditorFragmentTest#testHtmlModeToggleTextTransfer()

Project: WordPress-Android
File: EditorFragmentTest.java
public void testHtmlModeToggleTextTransfer() throws InterruptedException {
    waitForOnDomLoaded();
    final View view = mFragment.getView();
    if (view == null) {
        throw (new IllegalStateException("Fragment view is empty"));
    }
    final ToggleButton htmlButton = (ToggleButton) view.findViewById(R.id.format_bar_button_html);
    String content = mFragment.getContent().toString();
    final SourceViewEditText titleText = (SourceViewEditText) view.findViewById(R.id.sourceview_title);
    final SourceViewEditText contentText = (SourceViewEditText) view.findViewById(R.id.sourceview_content);
    // -- Check that title and content text is properly loaded into the EditTexts when switching to HTML mode
    final CountDownLatch uiThreadLatch1 = new CountDownLatch(1);
    mActivity.runOnUiThread(new Runnable() {

        @Override
        public void run() {
            // Turn on HTML mode
            htmlButton.performClick();
            uiThreadLatch1.countDown();
        }
    });
    uiThreadLatch1.await();
    // The HTML mode fields should be populated with the raw HTML loaded into the WebView on load
    // (see MockEditorActivity)
    assertEquals("A title", titleText.getText().toString());
    assertEquals(content, contentText.getText().toString());
    // -- Check that the title and content text is updated in the WebView when switching back from HTML mode
    final CountDownLatch uiThreadLatch2 = new CountDownLatch(1);
    mActivity.runOnUiThread(new Runnable() {

        @Override
        public void run() {
            titleText.setText("new title");
            contentText.setText("new <b>content</b>");
            // Check that getTitle() and getContent() return latest version even in HTML mode
            assertEquals("new title", mFragment.getTitle());
            assertEquals("new <b>content</b>", mFragment.getContent());
            // Turn off HTML mode
            htmlButton.performClick();
            uiThreadLatch2.countDown();
        }
    });
    uiThreadLatch2.await();
    // Wait for JS to update the title/content
    waitFor(300);
    assertEquals("new title", mFragment.getTitle());
    assertEquals("new <b>content</b>", mFragment.getContent());
}

26. LikeUtilsTest#testMakeLikeButtonDoUnLike()

Project: socialize-sdk-android
File: LikeUtilsTest.java
public void testMakeLikeButtonDoUnLike() throws Throwable {
    final Activity context = TestUtils.getActivity(this);
    final Entity entity = Entity.newInstance("testMakeLikeButton", "testMakeLikeButton");
    final Like like = new Like();
    like.setId(0L);
    like.setEntity(entity);
    SocializeLikeUtils mockLikeUtils = new SocializeLikeUtils() {

        public void like(Activity context, Entity entity, LikeOptions likeOptions, LikeAddListener listener, SocialNetwork... shareTo) {
            addResult(0, "like");
            listener.onCreate(like);
        }

        public void unlike(Activity context, String entityKey, LikeDeleteListener listener) {
            addResult(1, "unlike");
            listener.onDelete();
        }

        public void getLike(Activity context, String entityKey, LikeGetListener listener) {
            listener.onGet(like);
        }
    };
    final LikeButtonListener listener = new LikeButtonListener() {

        public void onClick(CompoundButton button) {
            addResult(4, "onClick");
        }

        public void onError(CompoundButton button, Exception error) {
        }

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            addResult(5, isChecked);
        }
    };
    SocializeAccess.setLikeUtilsProxy(mockLikeUtils);
    final CountDownLatch latch = new CountDownLatch(1);
    runTestOnUiThread(new Runnable() {

        @Override
        public void run() {
            ToggleButton button = new ToggleButton(context);
            button.setChecked(true);
            LikeUtils.makeLikeButton(context, button, entity, listener);
            button.performClick();
            addResult(3, button);
            latch.countDown();
        }
    });
    assertTrue(latch.await(10, TimeUnit.SECONDS));
    ToggleButton button = getResult(3);
    String result = getResult(1);
    assertFalse(button.isChecked());
    assertNotNull(result);
    assertEquals("unlike", result);
    assertNotNull(getResult(4));
    assertFalse((Boolean) getResult(5));
}

27. LikeUtilsTest#testMakeLikeButtonDoLike()

Project: socialize-sdk-android
File: LikeUtilsTest.java
public void testMakeLikeButtonDoLike() throws Throwable {
    final Activity context = TestUtils.getActivity(this);
    final Entity entity = Entity.newInstance("testMakeLikeButton", "testMakeLikeButton");
    final Like like = new Like();
    like.setId(0L);
    like.setEntity(entity);
    SocializeLikeUtils mockLikeUtils = new SocializeLikeUtils() {

        public void like(Activity context, Entity entity, LikeOptions likeOptions, LikeAddListener listener, SocialNetwork... shareTo) {
            addResult(0, "like");
            listener.onCreate(like);
        }

        public void unlike(Activity context, String entityKey, LikeDeleteListener listener) {
            addResult(1, "unlike");
            listener.onDelete();
        }

        public void getLike(Activity context, String entityKey, LikeGetListener listener) {
            listener.onGet(null);
        }
    };
    final LikeButtonListener listener = new LikeButtonListener() {

        public void onClick(CompoundButton button) {
            addResult(4, "onClick");
        }

        public void onError(CompoundButton button, Exception error) {
        }

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            addResult(5, isChecked);
        }
    };
    SocializeAccess.setLikeUtilsProxy(mockLikeUtils);
    final CountDownLatch latch = new CountDownLatch(1);
    runTestOnUiThread(new Runnable() {

        @Override
        public void run() {
            ToggleButton button = new ToggleButton(context);
            LikeUtils.makeLikeButton(context, button, entity, listener);
            button.performClick();
            addResult(3, button);
            latch.countDown();
        }
    });
    assertTrue(latch.await(10, TimeUnit.SECONDS));
    ToggleButton button = getResult(3);
    String result = getResult(0);
    assertTrue(button.isChecked());
    assertNotNull(result);
    assertEquals("like", result);
    assertNotNull(getResult(4));
    assertTrue((Boolean) getResult(5));
}

28. TabButton#init()

Project: bither-android
File: TabButton.java
private void init() {
    LinearLayout llIcon = new LinearLayout(getContext());
    llIcon.setOrientation(LinearLayout.HORIZONTAL);
    addView(llIcon, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT, Gravity.CENTER));
    ivIcon = new ImageView(getContext());
    ivIcon.setPadding(0, 0, 0, UIUtil.dip2pix(0.75f));
    LinearLayout.LayoutParams lpIcon = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
    lpIcon.topMargin = UIUtil.dip2pix(3);
    lpIcon.bottomMargin = UIUtil.dip2pix(3);
    lpIcon.gravity = Gravity.CENTER;
    ivIcon.setScaleType(ScaleType.CENTER_INSIDE);
    llIcon.addView(ivIcon, lpIcon);
    tvText = new TextView(getContext());
    tvText.setTextColor(Color.WHITE);
    tvText.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);
    tvText.setTypeface(null, Typeface.BOLD);
    tvText.setShadowLayer(0.5f, 1, -1, Color.argb(100, 0, 0, 0));
    tvText.setPadding(0, 0, 0, UIUtil.dip2pix(0.75f));
    tvText.setLines(1);
    tvText.setEllipsize(TruncateAt.END);
    llIcon.addView(tvText);
    ivArrowDown = new ImageView(getContext());
    llIcon.addView(ivArrowDown, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
    ((LinearLayout.LayoutParams) ivArrowDown.getLayoutParams()).gravity = Gravity.CENTER_VERTICAL;
    LinearLayout.LayoutParams lpText = (LinearLayout.LayoutParams) tvText.getLayoutParams();
    lpText.weight = 1;
    lpText.width = 0;
    lpText.gravity = Gravity.CENTER_VERTICAL;
    lpText.leftMargin = UIUtil.dip2pix(-7);
    LayoutParams lpBottom = new LayoutParams(LayoutParams.MATCH_PARENT, UIUtil.dip2pix(2.67f));
    lpBottom.bottomMargin = UIUtil.dip2pix(0.75f);
    lpBottom.gravity = Gravity.BOTTOM;
    tbtnBottom = new ToggleButton(getContext());
    tbtnBottom.setTextOff("");
    tbtnBottom.setTextOn("");
    tbtnBottom.setText("");
    tbtnBottom.setBackgroundResource(R.drawable.tab_bottom_background_selector);
    tbtnBottom.setFocusable(false);
    tbtnBottom.setClickable(false);
    addView(tbtnBottom, lpBottom);
    tvCount = new TextView(getContext());
    tvCount.setTextSize(TypedValue.COMPLEX_UNIT_SP, 9);
    tvCount.setGravity(Gravity.CENTER);
    tvCount.setTextColor(Color.WHITE);
    tvCount.setBackgroundResource(R.drawable.new_message_bg);
    LayoutParams lpCount = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.CENTER);
    lpCount.leftMargin = UIUtil.dip2pix(21);
    lpCount.bottomMargin = UIUtil.dip2pix(11);
    addView(tvCount, lpCount);
    tvCount.setVisibility(View.GONE);
    tvText.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {

        @Override
        public void onGlobalLayout() {
            if (!ellipsized) {
                return;
            }
            ellipsized = false;
            Layout l = tvText.getLayout();
            if (l != null) {
                int lines = l.getLineCount();
                if (lines > 0) {
                    if (l.getEllipsisCount(lines - 1) > 0) {
                        ellipsized = true;
                    }
                }
            }
            updateArrow();
        }
    });
}