<|start_filename|>libraries/cam2/src/androidTest/java/com/commonsware/cwac/cam2/test/SillyTest.java<|end_filename|>
///***
// Copyright (c) 2008-2015 CommonsWare, LLC
// Licensed under the Apache License, Version 2.0 (the "License"); you may not
// use this file except in compliance with the License. You may obtain a copy
// of the License at http://www.apache.org/licenses/LICENSE-2.0. Unless required
// by applicable law or agreed to in writing, software distributed under the
// License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
// OF ANY KIND, either express or implied. See the License for the specific
// language governing permissions and limitations under the License.
//
// From _The Busy Coder's Guide to Android Development_
// http://commonsware.com/Android
// */
//
//package com.commonsware.cwac.cam2.test;
//
//import android.support.test.runner.AndroidJUnit4;
//import junit.framework.Assert;
//import org.junit.After;
//import org.junit.AfterClass;
//import org.junit.Before;
//import org.junit.BeforeClass;
//import org.junit.Test;
//import org.junit.runner.RunWith;
//
//@RunWith(AndroidJUnit4.class)
//public class SillyTest {
//  @BeforeClass
//  static public void doThisFirstOnlyOnce() {
//    // do initialization here, run once for all SillyTest tests
//  }
//
//  @Before
//  public void doThisFirst() {
//    // do initialization here, run on every test method
//  }
//
//  @After
//  public void doThisLast() {
//    // do termination here, run on every test method
//  }
//
//  @AfterClass
//  static public void doThisLastOnlyOnce() {
//    // do termination here, run once for all SillyTest tests
//  }
//
//  @Test
//  public void thisIsReallySilly() {
//    Assert.assertEquals("bit got flipped by cosmic rays", 1, 1);
//  }
//}

<|start_filename|>libraries/CommLib/build/generated/source/r/debug/com/nicodelee/R.java<|end_filename|>
/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package com.nicodelee;

public final class R {
    public static final class attr {
        /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int alpha_pressed=0x7f01002a;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int backgroundColor=0x7f010002;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int barColor=0x7f010011;
        /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int barSpinCycleTime=0x7f010015;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int barWidth=0x7f010018;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int circleRadius=0x7f010016;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int color_pressed=0x7f010025;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int color_unpressed=0x7f010026;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int cropEnabled=0x7f01000e;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>ratio_fit_image</code></td><td>0</td><td></td></tr>
<tr><td><code>ratio_4_3</code></td><td>1</td><td></td></tr>
<tr><td><code>ratio_3_4</code></td><td>2</td><td></td></tr>
<tr><td><code>ratio_1_1</code></td><td>3</td><td></td></tr>
<tr><td><code>ratio_16_9</code></td><td>4</td><td></td></tr>
<tr><td><code>ratio_9_16</code></td><td>5</td><td></td></tr>
<tr><td><code>ratio_free</code></td><td>6</td><td></td></tr>
<tr><td><code>ratio_custom</code></td><td>7</td><td></td></tr>
<tr><td><code>circle</code></td><td>8</td><td></td></tr>
</table>
         */
        public static int cropMode=0x7f010001;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int fillRadius=0x7f010017;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int frameColor=0x7f010004;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int frameStrokeWeight=0x7f01000c;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int guideColor=0x7f010006;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>show_always</code></td><td>1</td><td></td></tr>
<tr><td><code>show_on_touch</code></td><td>2</td><td></td></tr>
<tr><td><code>not_show</code></td><td>3</td><td></td></tr>
</table>
         */
        public static int guideShowMode=0x7f010007;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int guideStrokeWeight=0x7f01000d;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int handleColor=0x7f010005;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>show_always</code></td><td>1</td><td></td></tr>
<tr><td><code>show_on_touch</code></td><td>2</td><td></td></tr>
<tr><td><code>not_show</code></td><td>3</td><td></td></tr>
</table>
         */
        public static int handleShowMode=0x7f010008;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int handleSize=0x7f010009;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int header=0x7f01001a;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int headerHeight=0x7f01001b;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int headerVisibleHeight=0x7f01001c;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int imgSrc=0x7f010000;
        /** <p>Must be a floating point value, such as "<code>1.2</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int initialFrameScale=0x7f01000f;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int linearProgress=0x7f010019;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int minFrameSize=0x7f01000b;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int overlayColor=0x7f010003;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int progressIndeterminate=0x7f010010;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int rimColor=0x7f010012;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int rimWidth=0x7f010013;
        /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int ripple_alpha=0x7f010028;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int ripple_color=0x7f010027;
        /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int ripple_duration=0x7f010029;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>round</code></td><td>0</td><td></td></tr>
<tr><td><code>rectangle</code></td><td>1</td><td></td></tr>
</table>
         */
        public static int shape_type=0x7f01002c;
        /** <p>Must be a floating point value, such as "<code>1.2</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int spinSpeed=0x7f010014;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_border_color=0x7f010022;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_border_width=0x7f010021;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_left_bottom_corner_radius=0x7f01001f;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_left_top_corner_radius=0x7f01001d;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_mutate_background=0x7f010023;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_oval=0x7f010024;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_right_bottom_corner_radius=0x7f010020;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int sriv_right_top_corner_radius=0x7f01001e;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int touchPadding=0x7f01000a;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int uiradius=0x7f01002b;
    }
    public static final class color {
        public static int color_pressed=0x7f040000;
        public static int ripple_color=0x7f040001;
        public static int transparent=0x7f040002;
    }
    public static final class dimen {
        public static int ui_radius=0x7f050000;
    }
    public static final class drawable {
        public static int dialog_bg_frame=0x7f020000;
    }
    public static final class id {
        public static int circle=0x7f060000;
        public static int loginpay_text=0x7f060010;
        public static int mypaydialog=0x7f06000e;
        public static int not_show=0x7f060009;
        public static int progressBar1=0x7f06000f;
        public static int ratio_16_9=0x7f060001;
        public static int ratio_1_1=0x7f060002;
        public static int ratio_3_4=0x7f060003;
        public static int ratio_4_3=0x7f060004;
        public static int ratio_9_16=0x7f060005;
        public static int ratio_custom=0x7f060006;
        public static int ratio_fit_image=0x7f060007;
        public static int ratio_free=0x7f060008;
        public static int rectangle=0x7f06000c;
        public static int round=0x7f06000d;
        public static int show_always=0x7f06000a;
        public static int show_on_touch=0x7f06000b;
    }
    public static final class layout {
        public static int loginpaydialog=0x7f030000;
    }
    public static final class styleable {
        /** Attributes that can be used with a CropImageView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #CropImageView_backgroundColor com.nicodelee:backgroundColor}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_cropEnabled com.nicodelee:cropEnabled}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_cropMode com.nicodelee:cropMode}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_frameColor com.nicodelee:frameColor}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_frameStrokeWeight com.nicodelee:frameStrokeWeight}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_guideColor com.nicodelee:guideColor}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_guideShowMode com.nicodelee:guideShowMode}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_guideStrokeWeight com.nicodelee:guideStrokeWeight}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_handleColor com.nicodelee:handleColor}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_handleShowMode com.nicodelee:handleShowMode}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_handleSize com.nicodelee:handleSize}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_imgSrc com.nicodelee:imgSrc}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_initialFrameScale com.nicodelee:initialFrameScale}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_minFrameSize com.nicodelee:minFrameSize}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_overlayColor com.nicodelee:overlayColor}</code></td><td></td></tr>
           <tr><td><code>{@link #CropImageView_touchPadding com.nicodelee:touchPadding}</code></td><td></td></tr>
           </table>
           @see #CropImageView_backgroundColor
           @see #CropImageView_cropEnabled
           @see #CropImageView_cropMode
           @see #CropImageView_frameColor
           @see #CropImageView_frameStrokeWeight
           @see #CropImageView_guideColor
           @see #CropImageView_guideShowMode
           @see #CropImageView_guideStrokeWeight
           @see #CropImageView_handleColor
           @see #CropImageView_handleShowMode
           @see #CropImageView_handleSize
           @see #CropImageView_imgSrc
           @see #CropImageView_initialFrameScale
           @see #CropImageView_minFrameSize
           @see #CropImageView_overlayColor
           @see #CropImageView_touchPadding
         */
        public static final int[] CropImageView = {
            0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003,
            0x7f010004, 0x7f010005, 0x7f010006, 0x7f010007,
            0x7f010008, 0x7f010009, 0x7f01000a, 0x7f01000b,
            0x7f01000c, 0x7f01000d, 0x7f01000e, 0x7f01000f
        };
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#backgroundColor}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:backgroundColor
        */
        public static int CropImageView_backgroundColor = 2;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#cropEnabled}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:cropEnabled
        */
        public static int CropImageView_cropEnabled = 14;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#cropMode}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>ratio_fit_image</code></td><td>0</td><td></td></tr>
<tr><td><code>ratio_4_3</code></td><td>1</td><td></td></tr>
<tr><td><code>ratio_3_4</code></td><td>2</td><td></td></tr>
<tr><td><code>ratio_1_1</code></td><td>3</td><td></td></tr>
<tr><td><code>ratio_16_9</code></td><td>4</td><td></td></tr>
<tr><td><code>ratio_9_16</code></td><td>5</td><td></td></tr>
<tr><td><code>ratio_free</code></td><td>6</td><td></td></tr>
<tr><td><code>ratio_custom</code></td><td>7</td><td></td></tr>
<tr><td><code>circle</code></td><td>8</td><td></td></tr>
</table>
          @attr name com.nicodelee:cropMode
        */
        public static int CropImageView_cropMode = 1;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#frameColor}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:frameColor
        */
        public static int CropImageView_frameColor = 4;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#frameStrokeWeight}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:frameStrokeWeight
        */
        public static int CropImageView_frameStrokeWeight = 12;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#guideColor}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:guideColor
        */
        public static int CropImageView_guideColor = 6;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#guideShowMode}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>show_always</code></td><td>1</td><td></td></tr>
<tr><td><code>show_on_touch</code></td><td>2</td><td></td></tr>
<tr><td><code>not_show</code></td><td>3</td><td></td></tr>
</table>
          @attr name com.nicodelee:guideShowMode
        */
        public static int CropImageView_guideShowMode = 7;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#guideStrokeWeight}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:guideStrokeWeight
        */
        public static int CropImageView_guideStrokeWeight = 13;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#handleColor}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:handleColor
        */
        public static int CropImageView_handleColor = 5;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#handleShowMode}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>show_always</code></td><td>1</td><td></td></tr>
<tr><td><code>show_on_touch</code></td><td>2</td><td></td></tr>
<tr><td><code>not_show</code></td><td>3</td><td></td></tr>
</table>
          @attr name com.nicodelee:handleShowMode
        */
        public static int CropImageView_handleShowMode = 8;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#handleSize}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:handleSize
        */
        public static int CropImageView_handleSize = 9;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#imgSrc}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name com.nicodelee:imgSrc
        */
        public static int CropImageView_imgSrc = 0;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#initialFrameScale}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a floating point value, such as "<code>1.2</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:initialFrameScale
        */
        public static int CropImageView_initialFrameScale = 15;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#minFrameSize}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:minFrameSize
        */
        public static int CropImageView_minFrameSize = 11;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#overlayColor}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:overlayColor
        */
        public static int CropImageView_overlayColor = 3;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#touchPadding}
          attribute's value can be found in the {@link #CropImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:touchPadding
        */
        public static int CropImageView_touchPadding = 10;
        /** Attributes that can be used with a ProgressWheel.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ProgressWheel_barColor com.nicodelee:barColor}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_barSpinCycleTime com.nicodelee:barSpinCycleTime}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_barWidth com.nicodelee:barWidth}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_circleRadius com.nicodelee:circleRadius}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_fillRadius com.nicodelee:fillRadius}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_linearProgress com.nicodelee:linearProgress}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_progressIndeterminate com.nicodelee:progressIndeterminate}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_rimColor com.nicodelee:rimColor}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_rimWidth com.nicodelee:rimWidth}</code></td><td></td></tr>
           <tr><td><code>{@link #ProgressWheel_spinSpeed com.nicodelee:spinSpeed}</code></td><td></td></tr>
           </table>
           @see #ProgressWheel_barColor
           @see #ProgressWheel_barSpinCycleTime
           @see #ProgressWheel_barWidth
           @see #ProgressWheel_circleRadius
           @see #ProgressWheel_fillRadius
           @see #ProgressWheel_linearProgress
           @see #ProgressWheel_progressIndeterminate
           @see #ProgressWheel_rimColor
           @see #ProgressWheel_rimWidth
           @see #ProgressWheel_spinSpeed
         */
        public static final int[] ProgressWheel = {
            0x7f010010, 0x7f010011, 0x7f010012, 0x7f010013,
            0x7f010014, 0x7f010015, 0x7f010016, 0x7f010017,
            0x7f010018, 0x7f010019
        };
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#barColor}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:barColor
        */
        public static int ProgressWheel_barColor = 1;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#barSpinCycleTime}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:barSpinCycleTime
        */
        public static int ProgressWheel_barSpinCycleTime = 5;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#barWidth}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:barWidth
        */
        public static int ProgressWheel_barWidth = 8;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#circleRadius}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:circleRadius
        */
        public static int ProgressWheel_circleRadius = 6;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#fillRadius}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:fillRadius
        */
        public static int ProgressWheel_fillRadius = 7;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#linearProgress}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:linearProgress
        */
        public static int ProgressWheel_linearProgress = 9;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#progressIndeterminate}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:progressIndeterminate
        */
        public static int ProgressWheel_progressIndeterminate = 0;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#rimColor}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:rimColor
        */
        public static int ProgressWheel_rimColor = 2;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#rimWidth}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:rimWidth
        */
        public static int ProgressWheel_rimWidth = 3;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#spinSpeed}
          attribute's value can be found in the {@link #ProgressWheel} array.


          <p>Must be a floating point value, such as "<code>1.2</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:spinSpeed
        */
        public static int ProgressWheel_spinSpeed = 4;
        /** Attributes that can be used with a PullScrollView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #PullScrollView_header com.nicodelee:header}</code></td><td></td></tr>
           <tr><td><code>{@link #PullScrollView_headerHeight com.nicodelee:headerHeight}</code></td><td></td></tr>
           <tr><td><code>{@link #PullScrollView_headerVisibleHeight com.nicodelee:headerVisibleHeight}</code></td><td></td></tr>
           </table>
           @see #PullScrollView_header
           @see #PullScrollView_headerHeight
           @see #PullScrollView_headerVisibleHeight
         */
        public static final int[] PullScrollView = {
            0x7f01001a, 0x7f01001b, 0x7f01001c
        };
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#header}
          attribute's value can be found in the {@link #PullScrollView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name com.nicodelee:header
        */
        public static int PullScrollView_header = 0;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#headerHeight}
          attribute's value can be found in the {@link #PullScrollView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:headerHeight
        */
        public static int PullScrollView_headerHeight = 1;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#headerVisibleHeight}
          attribute's value can be found in the {@link #PullScrollView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:headerVisibleHeight
        */
        public static int PullScrollView_headerVisibleHeight = 2;
        /** Attributes that can be used with a SelectableRoundedImageView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_android_scaleType android:scaleType}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_border_color com.nicodelee:sriv_border_color}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_border_width com.nicodelee:sriv_border_width}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_left_bottom_corner_radius com.nicodelee:sriv_left_bottom_corner_radius}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_left_top_corner_radius com.nicodelee:sriv_left_top_corner_radius}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_mutate_background com.nicodelee:sriv_mutate_background}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_oval com.nicodelee:sriv_oval}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_right_bottom_corner_radius com.nicodelee:sriv_right_bottom_corner_radius}</code></td><td></td></tr>
           <tr><td><code>{@link #SelectableRoundedImageView_sriv_right_top_corner_radius com.nicodelee:sriv_right_top_corner_radius}</code></td><td></td></tr>
           </table>
           @see #SelectableRoundedImageView_android_scaleType
           @see #SelectableRoundedImageView_sriv_border_color
           @see #SelectableRoundedImageView_sriv_border_width
           @see #SelectableRoundedImageView_sriv_left_bottom_corner_radius
           @see #SelectableRoundedImageView_sriv_left_top_corner_radius
           @see #SelectableRoundedImageView_sriv_mutate_background
           @see #SelectableRoundedImageView_sriv_oval
           @see #SelectableRoundedImageView_sriv_right_bottom_corner_radius
           @see #SelectableRoundedImageView_sriv_right_top_corner_radius
         */
        public static final int[] SelectableRoundedImageView = {
            0x0101011d, 0x7f01001d, 0x7f01001e, 0x7f01001f,
            0x7f010020, 0x7f010021, 0x7f010022, 0x7f010023,
            0x7f010024
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#scaleType}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.
          @attr name android:scaleType
        */
        public static int SelectableRoundedImageView_android_scaleType = 0;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_border_color}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_border_color
        */
        public static int SelectableRoundedImageView_sriv_border_color = 6;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_border_width}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_border_width
        */
        public static int SelectableRoundedImageView_sriv_border_width = 5;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_left_bottom_corner_radius}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_left_bottom_corner_radius
        */
        public static int SelectableRoundedImageView_sriv_left_bottom_corner_radius = 3;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_left_top_corner_radius}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_left_top_corner_radius
        */
        public static int SelectableRoundedImageView_sriv_left_top_corner_radius = 1;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_mutate_background}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_mutate_background
        */
        public static int SelectableRoundedImageView_sriv_mutate_background = 7;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_oval}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_oval
        */
        public static int SelectableRoundedImageView_sriv_oval = 8;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_right_bottom_corner_radius}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_right_bottom_corner_radius
        */
        public static int SelectableRoundedImageView_sriv_right_bottom_corner_radius = 4;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#sriv_right_top_corner_radius}
          attribute's value can be found in the {@link #SelectableRoundedImageView} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:sriv_right_top_corner_radius
        */
        public static int SelectableRoundedImageView_sriv_right_top_corner_radius = 2;
        /** Attributes that can be used with a UIButton.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #UIButton_alpha_pressed com.nicodelee:alpha_pressed}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_color_pressed com.nicodelee:color_pressed}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_color_unpressed com.nicodelee:color_unpressed}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_ripple_alpha com.nicodelee:ripple_alpha}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_ripple_color com.nicodelee:ripple_color}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_ripple_duration com.nicodelee:ripple_duration}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_shape_type com.nicodelee:shape_type}</code></td><td></td></tr>
           <tr><td><code>{@link #UIButton_uiradius com.nicodelee:uiradius}</code></td><td></td></tr>
           </table>
           @see #UIButton_alpha_pressed
           @see #UIButton_color_pressed
           @see #UIButton_color_unpressed
           @see #UIButton_ripple_alpha
           @see #UIButton_ripple_color
           @see #UIButton_ripple_duration
           @see #UIButton_shape_type
           @see #UIButton_uiradius
         */
        public static final int[] UIButton = {
            0x7f010025, 0x7f010026, 0x7f010027, 0x7f010028,
            0x7f010029, 0x7f01002a, 0x7f01002b, 0x7f01002c
        };
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#alpha_pressed}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:alpha_pressed
        */
        public static int UIButton_alpha_pressed = 5;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#color_pressed}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:color_pressed
        */
        public static int UIButton_color_pressed = 0;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#color_unpressed}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:color_unpressed
        */
        public static int UIButton_color_unpressed = 1;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#ripple_alpha}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:ripple_alpha
        */
        public static int UIButton_ripple_alpha = 3;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#ripple_color}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:ripple_color
        */
        public static int UIButton_ripple_color = 2;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#ripple_duration}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:ripple_duration
        */
        public static int UIButton_ripple_duration = 4;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#shape_type}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>round</code></td><td>0</td><td></td></tr>
<tr><td><code>rectangle</code></td><td>1</td><td></td></tr>
</table>
          @attr name com.nicodelee:shape_type
        */
        public static int UIButton_shape_type = 7;
        /**
          <p>This symbol is the offset where the {@link com.nicodelee.R.attr#uiradius}
          attribute's value can be found in the {@link #UIButton} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name com.nicodelee:uiradius
        */
        public static int UIButton_uiradius = 6;
    };
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/mode/ActicleMod.java<|end_filename|>
package com.nicodelee.beautyarticle.mode;

import com.nicodelee.beautyarticle.db.ActicleDatabase;
import com.raizlabs.android.dbflow.annotation.Column;
import com.raizlabs.android.dbflow.annotation.PrimaryKey;
import com.raizlabs.android.dbflow.annotation.Table;

/**
 * Created by Lin on 15/3/26.
 */
@Table(databaseName = ActicleDatabase.NANE) public class ActicleMod extends BaseMod {

  @Column(name = "id") @PrimaryKey public long id;

  @Column(name = "title") public String title;

  @Column(name = "image") public String image;

  @Column(name = "details") public String details;

  @Column(name = "descriptions") public String descriptions;

  @Column(name = "pub_date") public String pub_date;

  @Column(name = "author") public String author;

  @Column(name = "type") public String type;
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/activity/CameraActivity.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.activity;

import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import com.commonsware.cwac.cam2.AbstractCameraActivity;
import com.commonsware.cwac.cam2.CameraEngine;
import com.commonsware.cwac.cam2.CameraFragment;
import com.commonsware.cwac.cam2.ConfirmationFragment;
import com.commonsware.cwac.cam2.ImageContext;
import com.nicodelee.beautyarticle.ui.camara.PhotoProcessActivity;
import com.nicodelee.beautyarticle.utils.Logger;
import java.io.File;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

/**
 * Created by NocodeLee on 15/11/23.
 * Email：<EMAIL>
 */
public class CameraActivity extends AbstractCameraActivity
    implements ConfirmationFragment.Contract {

  public static final String EXTRA_CONFIRM = "cwac_cam2_confirm";

  public static final String EXTRA_DEBUG_SAVE_PREVIEW_FRAME = "cwac_cam2_save_preview";

  private static final String TAG_CONFIRM = ConfirmationFragment.class.getCanonicalName();
  private static final String[] PERMS = { Manifest.permission.CAMERA };
  private ConfirmationFragment confirmFrag;
  private boolean needsThumbnail = false;

  @Override protected String[] getNeededPermissions() {
    return (PERMS);
  }

  @Override protected void init() {
    super.init();

    confirmFrag = (ConfirmationFragment) getFragmentManager().findFragmentByTag(TAG_CONFIRM);

    Uri output = getOutputUri();

    needsThumbnail = (output == null);

    if (confirmFrag == null) {
      confirmFrag = ConfirmationFragment.newInstance();
      getFragmentManager().beginTransaction()
          .add(android.R.id.content, confirmFrag, TAG_CONFIRM)
          .commit();
    }

    if (!cameraFrag.isVisible() && !confirmFrag.isVisible()) {
      getFragmentManager().beginTransaction().hide(confirmFrag).show(cameraFrag).commit();
    }
  }

  @Subscribe(sticky = false, threadMode = ThreadMode.MAIN)
  @SuppressWarnings("unused") public void onEventMainThread(CameraEngine.PictureTakenEvent event) {
    if (event.exception == null) {
      if (getIntent().getBooleanExtra(EXTRA_CONFIRM, true)) {
        confirmFrag.setImage(event.getImageContext());

        getFragmentManager().beginTransaction().hide(cameraFrag).show(confirmFrag).commit();
      } else {
        completeRequest(event.getImageContext(), true);
      }
    } else {
      finish();
    }
  }

  @Override public void retakePicture() {
    getFragmentManager().beginTransaction().hide(confirmFrag).show(cameraFrag).commit();
  }

  @Override public void completeRequest(ImageContext imageContext, boolean isOK) {
    Logger.e(String.format("isOk=%b",isOK));
    //拍照回调数据
    if (!isOK) {
      setResult(RESULT_CANCELED);
      finish();
    } else {
      Logger.e(String.format("needsThumbnail=%b",needsThumbnail));
      if (needsThumbnail) {
        final Intent result = new Intent();

        result.putExtra("data", imageContext.buildResultThumbnail());

        findViewById(android.R.id.content).post(new Runnable() {
          @Override public void run() {
            setResult(RESULT_OK, result);
            removeFragments();
          }
        });
      } else {
        findViewById(android.R.id.content).post(new Runnable() {
          @Override public void run() {
            //setResult(RESULT_OK, new Intent().setData(getOutputUri()));
            Intent intent = new Intent(CameraActivity.this,PhotoProcessActivity.class);
            intent.putExtra("uri",getOutputUri()+"");
            //intent.setData(getOutputUri());
            Logger.e("uri="+getOutputUri());
            startActivity(intent);
            removeFragments();
          }
        });
      }
    }
  }

  @Override protected boolean needsOverlay() {
    return (true);
  }

  @Override protected boolean needsActionBar() {
    return (true);
  }

  @Override protected boolean isVideo() {
    return (false);
  }


  @Override protected void configEngine(CameraEngine engine) {
    if (getIntent().getBooleanExtra(EXTRA_DEBUG_SAVE_PREVIEW_FRAME, false)) {
      engine.setDebugSavePreviewFile(new File(getExternalCacheDir(), "cam2-preview.jpg"));
    }
  }

  @Override protected CameraFragment buildFragment() {
    return (CameraFragment.newPictureInstance(getOutputUri(),
        getIntent().getBooleanExtra(EXTRA_UPDATE_MEDIA_STORE, false)));
  }


  private void removeFragments() {
    getFragmentManager().beginTransaction().remove(confirmFrag).remove(cameraFrag).commit();
  }

  public static class IntentBuilder extends AbstractCameraActivity.IntentBuilder {

    public IntentBuilder(Context ctxt) {
      super(ctxt, CameraActivity.class);
    }

    public IntentBuilder skipConfirm() {
      result.putExtra(EXTRA_CONFIRM, false);

      return (this);
    }
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/mode/ShareMod.java<|end_filename|>
package com.nicodelee.beautyarticle.mode;

import android.graphics.Bitmap;

/**
 * Created by Nicodelee on 15/8/20.
 */
public class ShareMod extends BaseMod {
  public String title;
  public String text;
  public String imageUrl;
  public String url;
  public String titleUrl;
  public Bitmap imageData;
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/fragment/ActicleListFragment.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.fragment;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import butterknife.Bind;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.adapter.MainRecyclerViewAdapter;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.app.BaseSupportFragment;
import com.nicodelee.beautyarticle.mode.ActicleMod;
import com.nicodelee.beautyarticle.ui.presenter.ArticleListPresenter;
import com.nicodelee.beautyarticle.viewhelper.EndlessRecyclerOnScrollListener;
import com.nicodelee.beautyarticle.viewhelper.MySwipeRefreshLayout;
import com.nicodelee.utils.ListUtils;
import com.nicodelee.utils.WeakHandler;
import com.raizlabs.android.dbflow.sql.language.Select;
import java.util.ArrayList;
import java.util.List;
import nucleus.factory.PresenterFactory;
import nucleus.factory.RequiresPresenter;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

@RequiresPresenter(ArticleListPresenter.class) public class ActicleListFragment
    extends BaseSupportFragment<ArticleListPresenter>
    implements SwipeRefreshLayout.OnRefreshListener {

  @Bind(R.id.recyclerview) RecyclerView rv;
  @Bind(R.id.swipe_container) MySwipeRefreshLayout mSwipeLayout;

  private List<ActicleMod> macticleMods;
  private MainRecyclerViewAdapter mActcleAdapter;
  private boolean isHasMore = true;
  private LinearLayoutManager linearLayoutManager;

  @Override protected void injectorPresenter() {
    super.injectorPresenter();
    final PresenterFactory<ArticleListPresenter> superFactory = super.getPresenterFactory();
    setPresenterFactory(new PresenterFactory<ArticleListPresenter>() {
      @Override public ArticleListPresenter createPresenter() {
        ArticleListPresenter presenter = superFactory.createPresenter();
        getApiComponent().inject(presenter);
        return presenter;
      }
    });
  }

  @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,
      Bundle savedInstanceState) {
    return inflater.inflate(R.layout.fragment_main_list, container, false);
  }

  @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    macticleMods = new ArrayList<>();
    mSwipeLayout.setOnRefreshListener(this);
    mSwipeLayout.setColorSchemeResources(R.color.colorAccent, R.color.colorAccent,
        R.color.colorAccent, R.color.colorAccent);
    linearLayoutManager = new LinearLayoutManager(mActivity);
    rv.setLayoutManager(linearLayoutManager);

    if (isInDB()) {
      getPresenter().getData(ArticleListPresenter.LOCAL, 0, 0);
    } else {
      mSwipeLayout.setRefreshing(true);
      getPresenter().getData(ArticleListPresenter.WEB, 0, 0);//首次获取数据
    }
    rv.addOnScrollListener(
        new EndlessRecyclerOnScrollListener(linearLayoutManager, APP.getInstance().imageLoader,
            false, true) {
          @Override public void onLoadMore() {
            int size = macticleMods.size();
            if (isHasMore && !mSwipeLayout.isRefreshing() && size > 0) {
              mSwipeLayout.setRefreshing(true);
              getPresenter().getData(ArticleListPresenter.WEB, 1,
                  (int) macticleMods.get(size - 1).id);
            }
          }
        });
  }

  private boolean isInDB() {
    return new Select().count().from(ActicleMod.class).count() > 0;
  }

  private void setUpData(final int page, final ArrayList<ActicleMod> acticleMods) {
    mSwipeLayout.setRefreshing(false);
    if (ListUtils.isEmpty(acticleMods)) {
      if (page > 0) {
        showInfo("全部加载完毕");
        isHasMore = false;
      } else if (page < 0) {
        showInfo("小编正为你编辑更多文章");
      }
      return;
    }
    //page = 0 首次 <0 刷新 >0 加载更多
    if (page == 0) {
      macticleMods = acticleMods;
      mActcleAdapter = new MainRecyclerViewAdapter(mActivity, macticleMods);
      rv.setAdapter(mActcleAdapter);
    } else if (page > 0) {
      macticleMods.addAll(acticleMods);
      mActcleAdapter.notifyItemInserted(macticleMods.size());
    } else if (page < 0) {
      for (ActicleMod mainMod : acticleMods) {
        macticleMods.add(0, mainMod);
      }
      mActcleAdapter.notifyDataSetChanged();
    }
  }

  private void saveActicles(ArrayList<ActicleMod> acticleMods) {
    for (ActicleMod mainMod : acticleMods) {
      mainMod.save();
    }
  }

  @Override public void onRefresh() {
    new WeakHandler().postDelayed(new Runnable() {
      @Override public void run() {
        if (ListUtils.isEmpty(macticleMods)) {
          getPresenter().getData(ArticleListPresenter.WEB, 0, 0);//first time
        } else {
          getPresenter().getData(ArticleListPresenter.WEB, -1,
              (int) macticleMods.get(0).id);//update
        }
      }
    }, 300);
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
  public void onEvent(String msg) {
    if (msg.equals("Reselected")) {
      //rv.smoothScrollToPosition(0);
      linearLayoutManager.scrollToPosition(0);
    } else if (msg.equals("clear")) {
      mActcleAdapter.clearData();
    }
  }

  public void onChangeItems(ArrayList<ActicleMod> acticleMods, int pageIndex) {
    saveActicles(acticleMods);
    setUpData(pageIndex, acticleMods);
  }

  public void onNetworkError(Throwable throwable, int pageIndex) {
    mSwipeLayout.setRefreshing(false);
    showInfo("抱歉,出现了一些错:" + throwable.getMessage());
  }

  public void setLocalData(List<ActicleMod> acticleMods) {
    macticleMods = acticleMods;
    mActcleAdapter = new MainRecyclerViewAdapter(mActivity, macticleMods);
    rv.setAdapter(mActcleAdapter);
  }
}


<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/plugin/FlashModePlugin.java<|end_filename|>
/**
 * Copyright (c) 2015 CommonsWare, LLC
 * <p/>
 * Licensed under the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License. You may obtain
 * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
 * <p/>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.commonsware.cwac.cam2.plugin;

import android.annotation.TargetApi;
import android.content.Context;
import android.hardware.Camera;
import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CameraMetadata;
import android.hardware.camera2.CaptureRequest;
import android.os.Build;
import android.util.Log;
import android.view.OrientationEventListener;
import com.commonsware.cwac.cam2.AbstractCameraActivity;
import com.commonsware.cwac.cam2.CameraConfigurator;
import com.commonsware.cwac.cam2.CameraPlugin;
import com.commonsware.cwac.cam2.CameraSession;
import com.commonsware.cwac.cam2.ClassicCameraConfigurator;
import com.commonsware.cwac.cam2.FlashMode;
import com.commonsware.cwac.cam2.SimpleCameraTwoConfigurator;
import com.commonsware.cwac.cam2.SimpleClassicCameraConfigurator;
import java.util.List;

/**
 * Plugin for managing flash modes
 */
public class FlashModePlugin implements CameraPlugin {
  private final List<FlashMode> flashModes;

  public FlashModePlugin(List<FlashMode> flashModes) {
    this.flashModes=flashModes;
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public <T extends CameraConfigurator> T buildConfigurator(Class<T> type) {
    if (type == ClassicCameraConfigurator.class) {
      return (type.cast(new Classic()));
    }

    return(type.cast(new Two()));
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public void validate(CameraSession session) {
    // no validation required
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public void destroy() {
    // no-op
  }

  class Classic extends SimpleClassicCameraConfigurator {
    /**
     * {@inheritDoc}
     */
    @Override
    public Camera.Parameters configureStillCamera(
      Camera.CameraInfo info,
      Camera camera, Camera.Parameters params) {
      if (params!=null) {
        String desiredMode=null;
        boolean matched=false;

        for (FlashMode mode : flashModes) {
          if (mode==FlashMode.OFF) {
            desiredMode=Camera.Parameters.FLASH_MODE_OFF;
          }
          else if (mode==FlashMode.ALWAYS) {
            desiredMode=Camera.Parameters.FLASH_MODE_ON;
          }
          else if (mode==FlashMode.AUTO) {
            desiredMode=Camera.Parameters.FLASH_MODE_AUTO;
          }
          else if (mode==FlashMode.REDEYE) {
            desiredMode=Camera.Parameters.FLASH_MODE_RED_EYE;
          }

          if (params.getSupportedFlashModes().contains(desiredMode)) {
            params.setFlashMode(desiredMode);
            matched=true;
            break;
          }
        }

        if (!matched) {
          Log.w("CWAC-Cam2", "no support for requested flash mode");
        }
      }

      return(params);
    }
  }

  @TargetApi(Build.VERSION_CODES.LOLLIPOP)
  class Two extends SimpleCameraTwoConfigurator {
    /**
     * {@inheritDoc}
     */
    @Override
    public void addToCaptureRequest(CameraCharacteristics cc,
                                    boolean facingFront,
                                    CaptureRequest.Builder captureBuilder) {
      int desiredMode=getConvertedFlashMode(cc);

      if (desiredMode==-1) {
        Log.w("CWAC-Cam2", "no support for requested flash mode");
      }
      else {
        captureBuilder.set(CaptureRequest.CONTROL_AE_MODE,
          desiredMode);
      }
    }

    @Override
    public void addToPreviewRequest(CameraCharacteristics cc,
                                    CaptureRequest.Builder captureBuilder) {
      int desiredMode=getConvertedFlashMode(cc);

      if (desiredMode==-1) {
        Log.w("CWAC-Cam2", "no support for requested flash mode");
      }
      else {
        captureBuilder.set(CaptureRequest.CONTROL_AE_MODE,
          desiredMode);
      }
    }

    private int getConvertedFlashMode(CameraCharacteristics cc) {
      int[] availModes=cc.get(CameraCharacteristics.CONTROL_AE_AVAILABLE_MODES);

      for (FlashMode mode : flashModes) {
        int desiredMode=-1;

        if (mode==FlashMode.OFF) {
          desiredMode=CameraMetadata.CONTROL_AE_MODE_ON;
        }
        else if (mode==FlashMode.ALWAYS) {
          desiredMode=CameraMetadata.CONTROL_AE_MODE_ON_ALWAYS_FLASH;
        }
        else if (mode==FlashMode.AUTO) {
          desiredMode=CameraMetadata.CONTROL_AE_MODE_ON_AUTO_FLASH;
        }
        else if (mode==FlashMode.REDEYE) {
          desiredMode=CameraMetadata.CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE;
        }

        for (int availMode : availModes) {
          if (desiredMode==availMode) {
            return(desiredMode);
          }
        }
      }

      return(-1);
    }
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/bus/TemplateMenuEvent.java<|end_filename|>
package com.nicodelee.beautyarticle.bus;

import com.nicodelee.beautyarticle.viewhelper.viewtoimage.ViewToImageHelper;
import com.nicodelee.view.CropImageView;

/**
 * Created by Nicodelee on 15/9/28.
 */
public class TemplateMenuEvent {
  ViewToImageHelper.SaveImageAction saveImageAction;
  private int position;

  public TemplateMenuEvent(ViewToImageHelper.SaveImageAction imageAction, int sPosition) {
    saveImageAction = imageAction;
    position = sPosition;
  }

  public ViewToImageHelper.SaveImageAction getSaveImageAction() {
    return saveImageAction;
  }

  public void setSaveImageAction(ViewToImageHelper.SaveImageAction saveImageAction) {
    this.saveImageAction = saveImageAction;
  }

  public int getPosition() {
    return position;
  }

  public void setPosition(int position) {
    this.position = position;
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/activity/CropAct.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.activity;

import android.os.Bundle;
import android.view.View;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.app.BaseAct;
import com.nicodelee.beautyarticle.bus.CropEvent;
import com.nicodelee.beautyarticle.utils.DevicesUtil;
import com.nicodelee.view.CropImageView;
import com.nostra13.universalimageloader.core.assist.ImageSize;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

/**
 * Created by alee on 2015/9/4.
 */
public class CropAct extends BaseAct {

  @Bind(R.id.cropImageView) CropImageView mCropImageView;

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

  @Override protected int getLayoutResId() {
    return R.layout.act_corp_photo;
  }

  @Override protected void initView() {
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
  public void onEvent(CropEvent cropEvent) {
    mCropImageView.setCropMode(cropEvent.getCropMode());
    mCropImageView.setImageBitmap(
        APP.getInstance().imageLoader.loadImageSync("file:///" + cropEvent.getImagePath(),
            new ImageSize(DevicesUtil.screenWidth, DevicesUtil.screenHeight)));
  }

  @OnClick({ R.id.corp_done, R.id.corp_cancel }) public void Click(View view) {
    switch (view.getId()) {
      case R.id.corp_done:
        if (mCropImageView.getCroppedBitmap() != null) {
          EventBus.getDefault().postSticky(mCropImageView.getCroppedBitmap());
        }
        finish();
        break;
      case R.id.corp_cancel:
        finish();
        break;
    }
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/utils/IsExit.java<|end_filename|>
package com.nicodelee.beautyarticle.utils;

import android.os.Handler;
import android.os.HandlerThread;

/**
 * Description 按两次返回键退出程序
 *
 * Author lirizhi Create date 2014-1-10
 */

public class IsExit {

  private boolean isExit = false;
  private Runnable task = new Runnable() {
    @Override public void run() {
      isExit = false;
    }
  };

  public void doExitInThreeSecond() {
    isExit = true;
    HandlerThread thread = new HandlerThread("doTask");
    thread.start();
    new Handler(thread.getLooper()).postDelayed(task, 1500);
  }

  public boolean isExit() {
    return isExit;
  }

  public void setExit(boolean isExit) {
    this.isExit = isExit;
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/app/BaseFragment.java<|end_filename|>
package com.nicodelee.beautyarticle.app;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.view.Gravity;
import android.widget.Toast;
import com.devspark.appmsg.AppMsg;
import com.nicodelee.beautyarticle.internal.di.components.ApiComponent;
import java.io.Serializable;
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import nucleus.presenter.Presenter;
import nucleus.view.NucleusSupportFragment;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;

public abstract class BaseFragment extends Fragment {

  private Context context;

  @Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    context = getActivity().getApplicationContext();
    //RefWatcher refWatcher = APP.getRefWatcher(getActivity());
    //refWatcher.watch(this);
  }

  // http://stackoverflow.com/questions/15207305/getting-the-error-java-lang-illegalstateexception-activity-has-been-destroyed
  @Override public void onDetach() {
    super.onDetach();
    try {
      Field childFragmentManager = Fragment.class.getDeclaredField("mChildFragmentManager");
      childFragmentManager.setAccessible(true);
      childFragmentManager.set(this, null);
    } catch (NoSuchFieldException e) {
      throw new RuntimeException(e);
    } catch (IllegalAccessException e) {
      throw new RuntimeException(e);
    }
  }

  public FragmentActivity mActivity;

  @Override public void onAttach(Activity activity) {
    super.onAttach(activity);
    mActivity = (FragmentActivity) activity;
  }

  public APP getApp() {
    return (APP) getActivity().getApplication();
  }

  public void showToast(String message) {
    Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
  }

  public void showInfo(String message) {
    AppMsg.Style style = new AppMsg.Style(1500, com.nicodelee.beautyarticle.base.R.color.colorAccent);
    AppMsg appMsg = AppMsg.makeText(getActivity(), message, style);
    appMsg.setAnimation(
        com.nicodelee.beautyarticle.base.R.anim.slide_in_bottom, com.nicodelee.beautyarticle.base.R.anim.slide_out_bottom);
    appMsg.setLayoutGravity(Gravity.CENTER);
    appMsg.show();
  }

  public void skipIntent(Class clz, HashMap<String, Object> map, boolean isFinish) {
    Intent intent = new Intent(getActivity(), clz);
    if (map != null) {
      Iterator it = map.entrySet().iterator();

      while (it.hasNext()) {

        Map.Entry entry = (Map.Entry) it.next();

        String key = (String) entry.getKey();

        Serializable value = (Serializable) entry.getValue();

        intent.putExtra(key, value);
      }
    }
    startActivity(intent);
    if (isFinish) getActivity().finish();
  }

  public void skipIntent(Class clz, HashMap<String, Object> map, int code) {
    Intent intent = new Intent(getActivity(), clz);
    if (map != null) {
      Iterator it = map.entrySet().iterator();

      while (it.hasNext()) {

        Map.Entry entry = (Map.Entry) it.next();

        String key = (String) entry.getKey();

        Serializable value = (Serializable) entry.getValue();

        intent.putExtra(key, value);
      }
    }
    startActivityForResult(intent, code);
  }

  public void skipIntent(Class clz, int code, boolean isFinish) {
    Intent intent = new Intent(getActivity(), clz);
    startActivityForResult(intent, code);
    if (isFinish) getActivity().finish();
  }

  public void skipIntent(Class clz, boolean isFinish) {
    Intent intent = new Intent(getActivity(), clz);
    startActivity(intent);
    if (isFinish) getActivity().finish();
  }

  public Object getExtra(String name) {
    return getActivity().getIntent().getSerializableExtra(name);
  }

  @Override public void onStart() {
      EventBus.getDefault().register(this);
    super.onStart();
  }

  @Override public void onStop() {
    EventBus.getDefault().unregister(this);
    super.onStop();
  }

  @Subscribe
  public void onEvent(Object event) {
  }

  protected boolean isStickyAvailable() {
    return false;
  }

  protected void injectorPresenter() {}

  protected ApiComponent getApiComponent() {
    return ((APP) getActivity().getApplication()).getApiComponent();
  }


}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/api/RetrofitHelper.java<|end_filename|>
package com.nicodelee.beautyarticle.api;

import com.google.gson.ExclusionStrategy;
import com.google.gson.FieldAttributes;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.raizlabs.android.dbflow.structure.ModelAdapter;
import java.util.concurrent.TimeUnit;
import okhttp3.OkHttpClient;
import okhttp3.logging.HttpLoggingInterceptor;
import retrofit2.Retrofit;
import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory;

/**
 * Created by Nicodelee on 15/8/25.
 */
public class RetrofitHelper {
  //retrofit http://stackoverflow.com/questions/30201401/retrofit-get-results-in-a-stack-size-error-1036-kb
  private Gson getGson() {
    return new GsonBuilder().setExclusionStrategies(new ExclusionStrategy() {
      @Override public boolean shouldSkipField(FieldAttributes f) {
        return f.getDeclaredClass().equals(ModelAdapter.class);
      }

      @Override public boolean shouldSkipClass(Class<?> clazz) {
        return false;
      }
    }).create();
  }

  public BeautyApi getBeautyApi() {

    return new Retrofit.Builder().baseUrl(URLUtils.BASE_URL)
        .client(okHttpClient())
        .addConverterFactory(GsonConverterFactory.create(getGson()))
        .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
        .build()
        .create(BeautyApi.class);
  }

  private OkHttpClient okHttpClient() {
    HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
    interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
    OkHttpClient.Builder builder = new OkHttpClient.Builder()
        .addInterceptor(interceptor)
        .retryOnConnectionFailure(true)
        .connectTimeout(30, TimeUnit.SECONDS);
    return builder.build();
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/mode/BaseMod.java<|end_filename|>
package com.nicodelee.beautyarticle.mode;

import com.raizlabs.android.dbflow.structure.BaseModel;
import com.raizlabs.android.dbflow.structure.cache.BaseCacheableModel;

import java.io.Serializable;
import java.util.Date;

public class BaseMod extends BaseModel implements Serializable {
  /**
   *
   */
  private static final long serialVersionUID = 1L;
}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/utils/AndroidUtils.java<|end_filename|>
package com.nicodelee.beautyarticle.utils;

import android.app.Activity;
import android.content.Context;
import android.database.Cursor;
import android.media.CamcorderProfile;
import android.media.MediaRecorder;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.os.StatFs;
import android.provider.MediaStore;
import android.telephony.TelephonyManager;
import android.util.DisplayMetrics;
import android.widget.Toast;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.UUID;

public class AndroidUtils {
  private static final String IMAGE_CACHE = "image";
  private static final String VIDEO_CACHE = "video";
  private static final String BASE = "Beautyacticle/";
  private static final String IMAGE_SAVE = "pic";

  public static String IMAGE_CACHE_PATH;
  public static String VIDEO_CACHE_PATH;
  public static String PIC_CACHE_PATH;
  public static String BASE_PATH;

  public static void init(Context context) {
    if (IMAGE_CACHE_PATH != null) return;
    if (sdCardIsAvailable()) {
      BASE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + "/";
    } else {
      BASE_PATH = getExternalCacheDir(context);
    }
    IMAGE_CACHE_PATH = BASE_PATH + BASE + IMAGE_CACHE;
    VIDEO_CACHE_PATH = BASE_PATH + BASE + VIDEO_CACHE;
    PIC_CACHE_PATH = BASE_PATH + BASE + IMAGE_SAVE;
    createDirectory(IMAGE_CACHE_PATH);
    createDirectory(VIDEO_CACHE_PATH);
    createDirectory(PIC_CACHE_PATH);
  }

  public static void createDirectory(String path) {
    File file = new File(path);
    if (!file.exists()) {
      file.mkdirs();
    }
  }

  public static String convertOutputFormatToFileExt() {
    CamcorderProfile camcorderProfile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH);

    if (camcorderProfile.fileFormat == MediaRecorder.OutputFormat.MPEG_4) {
      return ".mp4";
    }
    return ".3gp";
  }

  /**
   *
   * @param context
   * @return
   */
  public static String getDeviceId(Context context) {
    final TelephonyManager tm =
        (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
    final String tmDevice, tmSerial, tmPhone, androidId;
    tmDevice = "" + tm.getDeviceId();
    tmSerial = "" + tm.getSimSerialNumber();
    androidId = "" + android.provider.Settings.Secure.getString(context.getContentResolver(),
        android.provider.Settings.Secure.ANDROID_ID);
    UUID deviceUuid =
        new UUID(androidId.hashCode(), ((long) tmDevice.hashCode() << 32) | tmSerial.hashCode());
    String uniqueId = deviceUuid.toString();
    return uniqueId;
  }

  public static boolean sdCardIsAvailable() {
    String status = Environment.getExternalStorageState();
    if (!status.equals(Environment.MEDIA_MOUNTED)) return false;
    return true;
  }

  /**
   * Checks if there is enough Space on SDCard
   *
   * @param updateSize Size to Check
   * @return True if the Update will fit on SDCard, false if not enough space
   * on SDCard Will also return false, if the SDCard is not mounted as
   * read/write
   */
  public static boolean enoughSpaceOnSdCard(long updateSize) {
    String status = Environment.getExternalStorageState();
    if (!status.equals(Environment.MEDIA_MOUNTED)) return false;
    return (updateSize < getRealSizeOnSdcard());
  }

  /**
   * get the space is left over on sdcard
   */
  public static long getRealSizeOnSdcard() {
    File path = new File(Environment.getExternalStorageDirectory().getAbsolutePath());
    StatFs stat = new StatFs(path.getPath());
    long blockSize = stat.getBlockSize();
    long availableBlocks = stat.getAvailableBlocks();
    return availableBlocks * blockSize;
  }

  /**
   * Checks if there is enough Space on phone self
   */
  public static boolean enoughSpaceOnPhone(long updateSize) {
    return getRealSizeOnPhone() > updateSize;
  }

  /**
   * get the space is left over on phone self
   */
  public static long getRealSizeOnPhone() {
    File path = Environment.getDataDirectory();
    StatFs stat = new StatFs(path.getPath());
    long blockSize = stat.getBlockSize();
    long availableBlocks = stat.getAvailableBlocks();
    long realSize = blockSize * availableBlocks;
    return realSize;
  }

  /**
   *
   * @param context
   * @param dpValue
   * @return
   */
  public static int dip2px(Context context, float dpValue) {
    final float scale = context.getResources().getDisplayMetrics().density;
    return (int) (dpValue * scale + 0.5f);
  }

  public static int dip2px(Context context, int rsd) {
    float dpValue = context.getResources().getDimension(rsd);
    final float scale = context.getResources().getDisplayMetrics().density;
    return (int) (dpValue * scale + 0.5f);
  }

  /**
   */
  public static int px2dip(Context context, float pxValue) {
    final float scale = context.getResources().getDisplayMetrics().density;
    return (int) (pxValue / scale + 0.5f) - 15;
  }

  /**
   * @param context The context to use
   * @return The external cache dir
   */
  private static String getExternalCacheDir(Context context) {
    //TODO  android 2.2 ,部分手机没有内存卡会报错
    if (hasExternalCacheDir()) {
      //			return context.getExternalCacheDir().getPath() + File.separator;
    }

    // Before Froyo we need to construct the external cache dir ourselves
    final String cacheDir = "/Android/data/" + context.getPackageName() + "/cache/image/";
    return Environment.getExternalStorageDirectory().getPath() + cacheDir;
  }

  private static boolean hasExternalCacheDir() {
    return Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO;
  }

  private static void saveFileByRequestPath(String requestPath, String result) {
    // TODO Auto-generated method stub
    deleteFileFromLocal(requestPath);
    saveFileForLocal(requestPath, result);
  }

  public static void saveFileForLocal(String requestPath, String result) {
    // TODO Auto-generated method stub
    File file = new File(requestPath);
    if (!file.exists()) {
      try {
        File parentFile = file.getParentFile();
        if (!parentFile.exists()) {
          parentFile.mkdirs();
        }
        file.createNewFile();
        FileOutputStream fout = new FileOutputStream(file);
        byte[] buffer = result.getBytes();
        fout.write(buffer);
        fout.close();
      } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
    }
  }


  /**
   *
   * @return
   */
  public static int getStatusBarHeight(Context context) {
    Class<?> c = null;
    Object obj = null;
    java.lang.reflect.Field field = null;
    int x = 0;
    int statusBarHeight = 0;
    try {
      c = Class.forName("com.android.internal.R$dimen");
      obj = c.newInstance();
      field = c.getField("status_bar_height");
      x = Integer.parseInt(field.get(obj).toString());
      statusBarHeight = context.getResources().getDimensionPixelSize(x);
      return statusBarHeight;
    } catch (Exception e) {
      e.printStackTrace();
    }
    return statusBarHeight;
  }

  public static int[] getScreen(Activity context) {
    DisplayMetrics dm = new DisplayMetrics();
    context.getWindowManager().getDefaultDisplay().getMetrics(dm);
    int screenWidth = dm.widthPixels;
    int screenHeigh = dm.heightPixels;
    int[] a = new int[2];
    a[0] = screenWidth;
    a[1] = screenHeigh;
    return a;
  }

  private static void deleteFileFromLocal(String requestPath) {
    File file = new File(requestPath);
    if (file.exists()) {
      file.delete();
    }
  }

}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/presenter/ArticleDetailPresenter.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.presenter;

import android.os.Bundle;
import com.nicodelee.beautyarticle.app.BaseRxPresenter;
import com.nicodelee.beautyarticle.ui.view.fragment.ArticleFragment;

/**
 * Created by NocodeLee on 15/12/8.
 * Email：<EMAIL>
 */
public class ArticleDetailPresenter extends BaseRxPresenter <ArticleFragment>{
  @Override protected void onCreate(Bundle savedState) {
    super.onCreate(savedState);

  }
}


<|start_filename|>libraries/SwipeBackLayoutLibary/build/generated/source/r/debug/me/imid/swipebacklayout/lib/R.java<|end_filename|>
/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package me.imid.swipebacklayout.lib;

public final class R {
    public static final class anim {
        public static int abc_fade_in=0x7f040000;
        public static int abc_fade_out=0x7f040001;
        public static int abc_grow_fade_in_from_bottom=0x7f040002;
        public static int abc_popup_enter=0x7f040003;
        public static int abc_popup_exit=0x7f040004;
        public static int abc_shrink_fade_out_from_bottom=0x7f040005;
        public static int abc_slide_in_bottom=0x7f040006;
        public static int abc_slide_in_top=0x7f040007;
        public static int abc_slide_out_bottom=0x7f040008;
        public static int abc_slide_out_top=0x7f040009;
    }
    public static final class attr {
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int SwipeBackLayoutStyle=0x7f010000;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarDivider=0x7f01003c;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarItemBackground=0x7f01003d;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarPopupTheme=0x7f010036;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
<p>May be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>wrap_content</code></td><td>0</td><td></td></tr>
</table>
         */
        public static int actionBarSize=0x7f01003b;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarSplitStyle=0x7f010038;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarStyle=0x7f010037;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarTabBarStyle=0x7f010032;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarTabStyle=0x7f010031;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarTabTextStyle=0x7f010033;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarTheme=0x7f010039;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionBarWidgetTheme=0x7f01003a;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionButtonStyle=0x7f010056;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionDropDownStyle=0x7f010052;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionLayout=0x7f0100a4;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionMenuTextAppearance=0x7f01003e;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
         */
        public static int actionMenuTextColor=0x7f01003f;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeBackground=0x7f010042;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeCloseButtonStyle=0x7f010041;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeCloseDrawable=0x7f010044;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeCopyDrawable=0x7f010046;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeCutDrawable=0x7f010045;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeFindDrawable=0x7f01004a;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModePasteDrawable=0x7f010047;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModePopupWindowStyle=0x7f01004c;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeSelectAllDrawable=0x7f010048;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeShareDrawable=0x7f010049;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeSplitBackground=0x7f010043;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeStyle=0x7f010040;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionModeWebSearchDrawable=0x7f01004b;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionOverflowButtonStyle=0x7f010034;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int actionOverflowMenuStyle=0x7f010035;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int actionProviderClass=0x7f0100a6;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int actionViewClass=0x7f0100a5;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int activityChooserViewStyle=0x7f01005e;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int alertDialogButtonGroupStyle=0x7f010081;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int alertDialogCenterButtons=0x7f010082;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int alertDialogStyle=0x7f010080;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int alertDialogTheme=0x7f010083;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int allowStacking=0x7f010095;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int arrowHeadLength=0x7f01009c;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int arrowShaftLength=0x7f01009d;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int autoCompleteTextViewStyle=0x7f010088;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int background=0x7f01000d;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
         */
        public static int backgroundSplit=0x7f01000f;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
         */
        public static int backgroundStacked=0x7f01000e;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int backgroundTint=0x7f0100d5;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>src_over</code></td><td>3</td><td></td></tr>
<tr><td><code>src_in</code></td><td>5</td><td></td></tr>
<tr><td><code>src_atop</code></td><td>9</td><td></td></tr>
<tr><td><code>multiply</code></td><td>14</td><td></td></tr>
<tr><td><code>screen</code></td><td>15</td><td></td></tr>
</table>
         */
        public static int backgroundTintMode=0x7f0100d6;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int barLength=0x7f01009e;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int borderlessButtonStyle=0x7f01005b;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonBarButtonStyle=0x7f010058;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonBarNegativeButtonStyle=0x7f010086;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonBarNeutralButtonStyle=0x7f010087;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonBarPositiveButtonStyle=0x7f010085;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonBarStyle=0x7f010057;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonPanelSideLayout=0x7f010020;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonStyle=0x7f010089;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int buttonStyleSmall=0x7f01008a;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int buttonTint=0x7f010096;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>src_over</code></td><td>3</td><td></td></tr>
<tr><td><code>src_in</code></td><td>5</td><td></td></tr>
<tr><td><code>src_atop</code></td><td>9</td><td></td></tr>
<tr><td><code>multiply</code></td><td>14</td><td></td></tr>
<tr><td><code>screen</code></td><td>15</td><td></td></tr>
</table>
         */
        public static int buttonTintMode=0x7f010097;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int checkboxStyle=0x7f01008b;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int checkedTextViewStyle=0x7f01008c;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int closeIcon=0x7f0100ae;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int closeItemLayout=0x7f01001d;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int collapseContentDescription=0x7f0100cc;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int collapseIcon=0x7f0100cb;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int color=0x7f010098;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorAccent=0x7f010079;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorButtonNormal=0x7f01007d;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorControlActivated=0x7f01007b;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorControlHighlight=0x7f01007c;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorControlNormal=0x7f01007a;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorPrimary=0x7f010077;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorPrimaryDark=0x7f010078;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int colorSwitchThumbNormal=0x7f01007e;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int commitIcon=0x7f0100b3;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int contentInsetEnd=0x7f010018;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int contentInsetLeft=0x7f010019;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int contentInsetRight=0x7f01001a;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int contentInsetStart=0x7f010017;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int controlBackground=0x7f01007f;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int customNavigationLayout=0x7f010010;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int defaultQueryHint=0x7f0100ad;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int dialogPreferredPadding=0x7f010050;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int dialogTheme=0x7f01004f;
        /** <p>Must be one or more (separated by '|') of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>none</code></td><td>0</td><td></td></tr>
<tr><td><code>useLogo</code></td><td>0x1</td><td></td></tr>
<tr><td><code>showHome</code></td><td>0x2</td><td></td></tr>
<tr><td><code>homeAsUp</code></td><td>0x4</td><td></td></tr>
<tr><td><code>showTitle</code></td><td>0x8</td><td></td></tr>
<tr><td><code>showCustom</code></td><td>0x10</td><td></td></tr>
<tr><td><code>disableHome</code></td><td>0x20</td><td></td></tr>
</table>
         */
        public static int displayOptions=0x7f010006;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int divider=0x7f01000c;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int dividerHorizontal=0x7f01005d;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int dividerPadding=0x7f0100a2;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int dividerVertical=0x7f01005c;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int drawableSize=0x7f01009a;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int drawerArrowStyle=0x7f010001;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int dropDownListViewStyle=0x7f01006f;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int dropdownListPreferredItemHeight=0x7f010053;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>left</code></td><td>0</td><td></td></tr>
<tr><td><code>right</code></td><td>1</td><td></td></tr>
<tr><td><code>bottom</code></td><td>2</td><td></td></tr>
<tr><td><code>all</code></td><td>3</td><td></td></tr>
</table>
         */
        public static int edge_flag=0x7f0100b8;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int edge_size=0x7f0100b7;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int editTextBackground=0x7f010064;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
         */
        public static int editTextColor=0x7f010063;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int editTextStyle=0x7f01008d;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int elevation=0x7f01001b;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int expandActivityOverflowButtonDrawable=0x7f01001f;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int gapBetweenBars=0x7f01009b;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int goIcon=0x7f0100af;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int height=0x7f010002;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int hideOnContentScroll=0x7f010016;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int homeAsUpIndicator=0x7f010055;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int homeLayout=0x7f010011;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int icon=0x7f01000a;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int iconifiedByDefault=0x7f0100ab;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int imageButtonStyle=0x7f010065;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int indeterminateProgressStyle=0x7f010013;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int initialActivityCount=0x7f01001e;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int isLightTheme=0x7f010003;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int itemPadding=0x7f010015;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int layout=0x7f0100aa;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int listChoiceBackgroundIndicator=0x7f010076;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int listDividerAlertDialog=0x7f010051;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int listItemLayout=0x7f010024;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int listLayout=0x7f010021;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int listPopupWindowStyle=0x7f010070;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int listPreferredItemHeight=0x7f01006a;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int listPreferredItemHeightLarge=0x7f01006c;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int listPreferredItemHeightSmall=0x7f01006b;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int listPreferredItemPaddingLeft=0x7f01006d;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int listPreferredItemPaddingRight=0x7f01006e;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int logo=0x7f01000b;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int logoDescription=0x7f0100cf;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int maxButtonHeight=0x7f0100ca;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int measureWithLargestChild=0x7f0100a0;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int multiChoiceItemLayout=0x7f010022;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int navigationContentDescription=0x7f0100ce;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int navigationIcon=0x7f0100cd;
        /** <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>normal</code></td><td>0</td><td></td></tr>
<tr><td><code>listMode</code></td><td>1</td><td></td></tr>
<tr><td><code>tabMode</code></td><td>2</td><td></td></tr>
</table>
         */
        public static int navigationMode=0x7f010005;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int overlapAnchor=0x7f0100a8;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int paddingEnd=0x7f0100d3;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int paddingStart=0x7f0100d2;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int panelBackground=0x7f010073;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int panelMenuListTheme=0x7f010075;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int panelMenuListWidth=0x7f010074;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int popupMenuStyle=0x7f010061;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int popupTheme=0x7f01001c;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int popupWindowStyle=0x7f010062;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int preserveIconSpacing=0x7f0100a7;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int progressBarPadding=0x7f010014;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int progressBarStyle=0x7f010012;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int queryBackground=0x7f0100b5;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int queryHint=0x7f0100ac;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int radioButtonStyle=0x7f01008e;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int ratingBarStyle=0x7f01008f;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int ratingBarStyleIndicator=0x7f010090;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int ratingBarStyleSmall=0x7f010091;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int searchHintIcon=0x7f0100b1;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int searchIcon=0x7f0100b0;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int searchViewStyle=0x7f010069;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int seekBarStyle=0x7f010092;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int selectableItemBackground=0x7f010059;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int selectableItemBackgroundBorderless=0x7f01005a;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int shadow_bottom=0x7f0100bb;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int shadow_left=0x7f0100b9;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int shadow_right=0x7f0100ba;
        /** <p>Must be one or more (separated by '|') of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>never</code></td><td>0</td><td></td></tr>
<tr><td><code>ifRoom</code></td><td>1</td><td></td></tr>
<tr><td><code>always</code></td><td>2</td><td></td></tr>
<tr><td><code>withText</code></td><td>4</td><td></td></tr>
<tr><td><code>collapseActionView</code></td><td>8</td><td></td></tr>
</table>
         */
        public static int showAsAction=0x7f0100a3;
        /** <p>Must be one or more (separated by '|') of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>none</code></td><td>0</td><td></td></tr>
<tr><td><code>beginning</code></td><td>1</td><td></td></tr>
<tr><td><code>middle</code></td><td>2</td><td></td></tr>
<tr><td><code>end</code></td><td>4</td><td></td></tr>
</table>
         */
        public static int showDividers=0x7f0100a1;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int showText=0x7f0100c2;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int singleChoiceItemLayout=0x7f010023;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int spinBars=0x7f010099;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int spinnerDropDownItemStyle=0x7f010054;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int spinnerStyle=0x7f010093;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int splitTrack=0x7f0100c1;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int srcCompat=0x7f010025;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int state_above_anchor=0x7f0100a9;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int submitBackground=0x7f0100b6;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int subtitle=0x7f010007;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int subtitleTextAppearance=0x7f0100c4;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int subtitleTextColor=0x7f0100d1;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int subtitleTextStyle=0x7f010009;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int suggestionRowLayout=0x7f0100b4;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int switchMinWidth=0x7f0100bf;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int switchPadding=0x7f0100c0;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int switchStyle=0x7f010094;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int switchTextAppearance=0x7f0100be;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a boolean value, either "<code>true</code>" or "<code>false</code>".
         */
        public static int textAllCaps=0x7f010026;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int textAppearanceLargePopupMenu=0x7f01004d;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int textAppearanceListItem=0x7f010071;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int textAppearanceListItemSmall=0x7f010072;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int textAppearanceSearchResultSubtitle=0x7f010067;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int textAppearanceSearchResultTitle=0x7f010066;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int textAppearanceSmallPopupMenu=0x7f01004e;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
         */
        public static int textColorAlertDialogListItem=0x7f010084;
        /** <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
         */
        public static int textColorSearchUrl=0x7f010068;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int theme=0x7f0100d4;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int thickness=0x7f01009f;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int thumbTextPadding=0x7f0100bd;
        /** <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int title=0x7f010004;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int titleMarginBottom=0x7f0100c9;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int titleMarginEnd=0x7f0100c7;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int titleMarginStart=0x7f0100c6;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int titleMarginTop=0x7f0100c8;
        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int titleMargins=0x7f0100c5;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int titleTextAppearance=0x7f0100c3;
        /** <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int titleTextColor=0x7f0100d0;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int titleTextStyle=0x7f010008;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int toolbarNavigationButtonStyle=0x7f010060;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int toolbarStyle=0x7f01005f;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int track=0x7f0100bc;
        /** <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
         */
        public static int voiceIcon=0x7f0100b2;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowActionBar=0x7f010027;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowActionBarOverlay=0x7f010029;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowActionModeOverlay=0x7f01002a;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowFixedHeightMajor=0x7f01002e;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowFixedHeightMinor=0x7f01002c;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowFixedWidthMajor=0x7f01002b;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowFixedWidthMinor=0x7f01002d;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowMinWidthMajor=0x7f01002f;
        /** <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowMinWidthMinor=0x7f010030;
        /** <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
         */
        public static int windowNoTitle=0x7f010028;
    }
    public static final class bool {
        public static int abc_action_bar_embed_tabs=0x7f060003;
        public static int abc_action_bar_embed_tabs_pre_jb=0x7f060001;
        public static int abc_action_bar_expanded_action_views_exclusive=0x7f060004;
        public static int abc_allow_stacked_button_bar=0x7f060000;
        public static int abc_config_actionMenuItemAllCaps=0x7f060005;
        public static int abc_config_allowActionMenuItemTextWithIcon=0x7f060002;
        public static int abc_config_closeDialogWhenTouchOutside=0x7f060006;
        public static int abc_config_showMenuShortcutsWhenKeyboardPresent=0x7f060007;
    }
    public static final class color {
        public static int abc_background_cache_hint_selector_material_dark=0x7f0a003a;
        public static int abc_background_cache_hint_selector_material_light=0x7f0a003b;
        public static int abc_color_highlight_material=0x7f0a003c;
        public static int abc_input_method_navigation_guard=0x7f0a0000;
        public static int abc_primary_text_disable_only_material_dark=0x7f0a003d;
        public static int abc_primary_text_disable_only_material_light=0x7f0a003e;
        public static int abc_primary_text_material_dark=0x7f0a003f;
        public static int abc_primary_text_material_light=0x7f0a0040;
        public static int abc_search_url_text=0x7f0a0041;
        public static int abc_search_url_text_normal=0x7f0a0001;
        public static int abc_search_url_text_pressed=0x7f0a0002;
        public static int abc_search_url_text_selected=0x7f0a0003;
        public static int abc_secondary_text_material_dark=0x7f0a0042;
        public static int abc_secondary_text_material_light=0x7f0a0043;
        public static int accent_material_dark=0x7f0a0004;
        public static int accent_material_light=0x7f0a0005;
        public static int background_floating_material_dark=0x7f0a0006;
        public static int background_floating_material_light=0x7f0a0007;
        public static int background_material_dark=0x7f0a0008;
        public static int background_material_light=0x7f0a0009;
        public static int bright_foreground_disabled_material_dark=0x7f0a000a;
        public static int bright_foreground_disabled_material_light=0x7f0a000b;
        public static int bright_foreground_inverse_material_dark=0x7f0a000c;
        public static int bright_foreground_inverse_material_light=0x7f0a000d;
        public static int bright_foreground_material_dark=0x7f0a000e;
        public static int bright_foreground_material_light=0x7f0a000f;
        public static int button_material_dark=0x7f0a0010;
        public static int button_material_light=0x7f0a0011;
        public static int dim_foreground_disabled_material_dark=0x7f0a0012;
        public static int dim_foreground_disabled_material_light=0x7f0a0013;
        public static int dim_foreground_material_dark=0x7f0a0014;
        public static int dim_foreground_material_light=0x7f0a0015;
        public static int foreground_material_dark=0x7f0a0016;
        public static int foreground_material_light=0x7f0a0017;
        public static int highlighted_text_material_dark=0x7f0a0018;
        public static int highlighted_text_material_light=0x7f0a0019;
        public static int hint_foreground_material_dark=0x7f0a001a;
        public static int hint_foreground_material_light=0x7f0a001b;
        public static int material_blue_grey_800=0x7f0a001c;
        public static int material_blue_grey_900=0x7f0a001d;
        public static int material_blue_grey_950=0x7f0a001e;
        public static int material_deep_teal_200=0x7f0a001f;
        public static int material_deep_teal_500=0x7f0a0020;
        public static int material_grey_100=0x7f0a0021;
        public static int material_grey_300=0x7f0a0022;
        public static int material_grey_50=0x7f0a0023;
        public static int material_grey_600=0x7f0a0024;
        public static int material_grey_800=0x7f0a0025;
        public static int material_grey_850=0x7f0a0026;
        public static int material_grey_900=0x7f0a0027;
        public static int primary_dark_material_dark=0x7f0a0028;
        public static int primary_dark_material_light=0x7f0a0029;
        public static int primary_material_dark=0x7f0a002a;
        public static int primary_material_light=0x7f0a002b;
        public static int primary_text_default_material_dark=0x7f0a002c;
        public static int primary_text_default_material_light=0x7f0a002d;
        public static int primary_text_disabled_material_dark=0x7f0a002e;
        public static int primary_text_disabled_material_light=0x7f0a002f;
        public static int ripple_material_dark=0x7f0a0030;
        public static int ripple_material_light=0x7f0a0031;
        public static int secondary_text_default_material_dark=0x7f0a0032;
        public static int secondary_text_default_material_light=0x7f0a0033;
        public static int secondary_text_disabled_material_dark=0x7f0a0034;
        public static int secondary_text_disabled_material_light=0x7f0a0035;
        public static int switch_thumb_disabled_material_dark=0x7f0a0036;
        public static int switch_thumb_disabled_material_light=0x7f0a0037;
        public static int switch_thumb_material_dark=0x7f0a0044;
        public static int switch_thumb_material_light=0x7f0a0045;
        public static int switch_thumb_normal_material_dark=0x7f0a0038;
        public static int switch_thumb_normal_material_light=0x7f0a0039;
    }
    public static final class dimen {
        public static int abc_action_bar_content_inset_material=0x7f07000d;
        public static int abc_action_bar_default_height_material=0x7f070001;
        public static int abc_action_bar_default_padding_end_material=0x7f07000e;
        public static int abc_action_bar_default_padding_start_material=0x7f07000f;
        public static int abc_action_bar_icon_vertical_padding_material=0x7f070011;
        public static int abc_action_bar_overflow_padding_end_material=0x7f070012;
        public static int abc_action_bar_overflow_padding_start_material=0x7f070013;
        public static int abc_action_bar_progress_bar_size=0x7f070002;
        public static int abc_action_bar_stacked_max_height=0x7f070014;
        public static int abc_action_bar_stacked_tab_max_width=0x7f070015;
        public static int abc_action_bar_subtitle_bottom_margin_material=0x7f070016;
        public static int abc_action_bar_subtitle_top_margin_material=0x7f070017;
        public static int abc_action_button_min_height_material=0x7f070018;
        public static int abc_action_button_min_width_material=0x7f070019;
        public static int abc_action_button_min_width_overflow_material=0x7f07001a;
        public static int abc_alert_dialog_button_bar_height=0x7f070000;
        public static int abc_button_inset_horizontal_material=0x7f07001b;
        public static int abc_button_inset_vertical_material=0x7f07001c;
        public static int abc_button_padding_horizontal_material=0x7f07001d;
        public static int abc_button_padding_vertical_material=0x7f07001e;
        public static int abc_config_prefDialogWidth=0x7f070005;
        public static int abc_control_corner_material=0x7f07001f;
        public static int abc_control_inset_material=0x7f070020;
        public static int abc_control_padding_material=0x7f070021;
        public static int abc_dialog_fixed_height_major=0x7f070006;
        public static int abc_dialog_fixed_height_minor=0x7f070007;
        public static int abc_dialog_fixed_width_major=0x7f070008;
        public static int abc_dialog_fixed_width_minor=0x7f070009;
        public static int abc_dialog_list_padding_vertical_material=0x7f070022;
        public static int abc_dialog_min_width_major=0x7f07000a;
        public static int abc_dialog_min_width_minor=0x7f07000b;
        public static int abc_dialog_padding_material=0x7f070023;
        public static int abc_dialog_padding_top_material=0x7f070024;
        public static int abc_disabled_alpha_material_dark=0x7f070025;
        public static int abc_disabled_alpha_material_light=0x7f070026;
        public static int abc_dropdownitem_icon_width=0x7f070027;
        public static int abc_dropdownitem_text_padding_left=0x7f070028;
        public static int abc_dropdownitem_text_padding_right=0x7f070029;
        public static int abc_edit_text_inset_bottom_material=0x7f07002a;
        public static int abc_edit_text_inset_horizontal_material=0x7f07002b;
        public static int abc_edit_text_inset_top_material=0x7f07002c;
        public static int abc_floating_window_z=0x7f07002d;
        public static int abc_list_item_padding_horizontal_material=0x7f07002e;
        public static int abc_panel_menu_list_width=0x7f07002f;
        public static int abc_search_view_preferred_width=0x7f070030;
        public static int abc_search_view_text_min_width=0x7f07000c;
        public static int abc_seekbar_track_background_height_material=0x7f070031;
        public static int abc_seekbar_track_progress_height_material=0x7f070032;
        public static int abc_select_dialog_padding_start_material=0x7f070033;
        public static int abc_switch_padding=0x7f070010;
        public static int abc_text_size_body_1_material=0x7f070034;
        public static int abc_text_size_body_2_material=0x7f070035;
        public static int abc_text_size_button_material=0x7f070036;
        public static int abc_text_size_caption_material=0x7f070037;
        public static int abc_text_size_display_1_material=0x7f070038;
        public static int abc_text_size_display_2_material=0x7f070039;
        public static int abc_text_size_display_3_material=0x7f07003a;
        public static int abc_text_size_display_4_material=0x7f07003b;
        public static int abc_text_size_headline_material=0x7f07003c;
        public static int abc_text_size_large_material=0x7f07003d;
        public static int abc_text_size_medium_material=0x7f07003e;
        public static int abc_text_size_menu_material=0x7f07003f;
        public static int abc_text_size_small_material=0x7f070040;
        public static int abc_text_size_subhead_material=0x7f070041;
        public static int abc_text_size_subtitle_material_toolbar=0x7f070003;
        public static int abc_text_size_title_material=0x7f070042;
        public static int abc_text_size_title_material_toolbar=0x7f070004;
        public static int disabled_alpha_material_dark=0x7f070043;
        public static int disabled_alpha_material_light=0x7f070044;
        public static int highlight_alpha_material_colored=0x7f070045;
        public static int highlight_alpha_material_dark=0x7f070046;
        public static int highlight_alpha_material_light=0x7f070047;
        public static int notification_large_icon_height=0x7f070048;
        public static int notification_large_icon_width=0x7f070049;
        public static int notification_subtext_size=0x7f07004a;
    }
    public static final class drawable {
        public static int abc_ab_share_pack_mtrl_alpha=0x7f020000;
        public static int abc_action_bar_item_background_material=0x7f020001;
        public static int abc_btn_borderless_material=0x7f020002;
        public static int abc_btn_check_material=0x7f020003;
        public static int abc_btn_check_to_on_mtrl_000=0x7f020004;
        public static int abc_btn_check_to_on_mtrl_015=0x7f020005;
        public static int abc_btn_colored_material=0x7f020006;
        public static int abc_btn_default_mtrl_shape=0x7f020007;
        public static int abc_btn_radio_material=0x7f020008;
        public static int abc_btn_radio_to_on_mtrl_000=0x7f020009;
        public static int abc_btn_radio_to_on_mtrl_015=0x7f02000a;
        public static int abc_btn_rating_star_off_mtrl_alpha=0x7f02000b;
        public static int abc_btn_rating_star_on_mtrl_alpha=0x7f02000c;
        public static int abc_btn_switch_to_on_mtrl_00001=0x7f02000d;
        public static int abc_btn_switch_to_on_mtrl_00012=0x7f02000e;
        public static int abc_cab_background_internal_bg=0x7f02000f;
        public static int abc_cab_background_top_material=0x7f020010;
        public static int abc_cab_background_top_mtrl_alpha=0x7f020011;
        public static int abc_control_background_material=0x7f020012;
        public static int abc_dialog_material_background_dark=0x7f020013;
        public static int abc_dialog_material_background_light=0x7f020014;
        public static int abc_edit_text_material=0x7f020015;
        public static int abc_ic_ab_back_mtrl_am_alpha=0x7f020016;
        public static int abc_ic_clear_mtrl_alpha=0x7f020017;
        public static int abc_ic_commit_search_api_mtrl_alpha=0x7f020018;
        public static int abc_ic_go_search_api_mtrl_alpha=0x7f020019;
        public static int abc_ic_menu_copy_mtrl_am_alpha=0x7f02001a;
        public static int abc_ic_menu_cut_mtrl_alpha=0x7f02001b;
        public static int abc_ic_menu_moreoverflow_mtrl_alpha=0x7f02001c;
        public static int abc_ic_menu_paste_mtrl_am_alpha=0x7f02001d;
        public static int abc_ic_menu_selectall_mtrl_alpha=0x7f02001e;
        public static int abc_ic_menu_share_mtrl_alpha=0x7f02001f;
        public static int abc_ic_search_api_mtrl_alpha=0x7f020020;
        public static int abc_ic_star_black_16dp=0x7f020021;
        public static int abc_ic_star_black_36dp=0x7f020022;
        public static int abc_ic_star_half_black_16dp=0x7f020023;
        public static int abc_ic_star_half_black_36dp=0x7f020024;
        public static int abc_ic_voice_search_api_mtrl_alpha=0x7f020025;
        public static int abc_item_background_holo_dark=0x7f020026;
        public static int abc_item_background_holo_light=0x7f020027;
        public static int abc_list_divider_mtrl_alpha=0x7f020028;
        public static int abc_list_focused_holo=0x7f020029;
        public static int abc_list_longpressed_holo=0x7f02002a;
        public static int abc_list_pressed_holo_dark=0x7f02002b;
        public static int abc_list_pressed_holo_light=0x7f02002c;
        public static int abc_list_selector_background_transition_holo_dark=0x7f02002d;
        public static int abc_list_selector_background_transition_holo_light=0x7f02002e;
        public static int abc_list_selector_disabled_holo_dark=0x7f02002f;
        public static int abc_list_selector_disabled_holo_light=0x7f020030;
        public static int abc_list_selector_holo_dark=0x7f020031;
        public static int abc_list_selector_holo_light=0x7f020032;
        public static int abc_menu_hardkey_panel_mtrl_mult=0x7f020033;
        public static int abc_popup_background_mtrl_mult=0x7f020034;
        public static int abc_ratingbar_full_material=0x7f020035;
        public static int abc_ratingbar_indicator_material=0x7f020036;
        public static int abc_ratingbar_small_material=0x7f020037;
        public static int abc_scrubber_control_off_mtrl_alpha=0x7f020038;
        public static int abc_scrubber_control_to_pressed_mtrl_000=0x7f020039;
        public static int abc_scrubber_control_to_pressed_mtrl_005=0x7f02003a;
        public static int abc_scrubber_primary_mtrl_alpha=0x7f02003b;
        public static int abc_scrubber_track_mtrl_alpha=0x7f02003c;
        public static int abc_seekbar_thumb_material=0x7f02003d;
        public static int abc_seekbar_track_material=0x7f02003e;
        public static int abc_spinner_mtrl_am_alpha=0x7f02003f;
        public static int abc_spinner_textfield_background_material=0x7f020040;
        public static int abc_switch_thumb_material=0x7f020041;
        public static int abc_switch_track_mtrl_alpha=0x7f020042;
        public static int abc_tab_indicator_material=0x7f020043;
        public static int abc_tab_indicator_mtrl_alpha=0x7f020044;
        public static int abc_text_cursor_material=0x7f020045;
        public static int abc_textfield_activated_mtrl_alpha=0x7f020046;
        public static int abc_textfield_default_mtrl_alpha=0x7f020047;
        public static int abc_textfield_search_activated_mtrl_alpha=0x7f020048;
        public static int abc_textfield_search_default_mtrl_alpha=0x7f020049;
        public static int abc_textfield_search_material=0x7f02004a;
        public static int notification_template_icon_bg=0x7f02004e;
        public static int shadow_bottom=0x7f02004b;
        public static int shadow_left=0x7f02004c;
        public static int shadow_right=0x7f02004d;
    }
    public static final class id {
        public static int action0=0x7f0b0054;
        public static int action_bar=0x7f0b0045;
        public static int action_bar_activity_content=0x7f0b0000;
        public static int action_bar_container=0x7f0b0044;
        public static int action_bar_root=0x7f0b0040;
        public static int action_bar_spinner=0x7f0b0001;
        public static int action_bar_subtitle=0x7f0b0026;
        public static int action_bar_title=0x7f0b0025;
        public static int action_context_bar=0x7f0b0046;
        public static int action_divider=0x7f0b0058;
        public static int action_menu_divider=0x7f0b0002;
        public static int action_menu_presenter=0x7f0b0003;
        public static int action_mode_bar=0x7f0b0042;
        public static int action_mode_bar_stub=0x7f0b0041;
        public static int action_mode_close_button=0x7f0b0027;
        public static int activity_chooser_view_content=0x7f0b0028;
        public static int alertTitle=0x7f0b0034;
        public static int all=0x7f0b0021;
        public static int always=0x7f0b001c;
        public static int beginning=0x7f0b0019;
        public static int bottom=0x7f0b0022;
        public static int buttonPanel=0x7f0b002f;
        public static int cancel_action=0x7f0b0055;
        public static int checkbox=0x7f0b003d;
        public static int chronometer=0x7f0b005b;
        public static int collapseActionView=0x7f0b001d;
        public static int contentPanel=0x7f0b0035;
        public static int custom=0x7f0b003b;
        public static int customPanel=0x7f0b003a;
        public static int decor_content_parent=0x7f0b0043;
        public static int default_activity_button=0x7f0b002b;
        public static int disableHome=0x7f0b000c;
        public static int edit_query=0x7f0b0047;
        public static int end=0x7f0b001a;
        public static int end_padder=0x7f0b0060;
        public static int expand_activities_button=0x7f0b0029;
        public static int expanded_menu=0x7f0b003c;
        public static int home=0x7f0b0004;
        public static int homeAsUp=0x7f0b000d;
        public static int icon=0x7f0b002d;
        public static int ifRoom=0x7f0b001e;
        public static int image=0x7f0b002a;
        public static int info=0x7f0b005f;
        public static int left=0x7f0b0023;
        public static int line1=0x7f0b0059;
        public static int line3=0x7f0b005d;
        public static int listMode=0x7f0b0009;
        public static int list_item=0x7f0b002c;
        public static int media_actions=0x7f0b0057;
        public static int middle=0x7f0b001b;
        public static int multiply=0x7f0b0014;
        public static int never=0x7f0b001f;
        public static int none=0x7f0b000e;
        public static int normal=0x7f0b000a;
        public static int parentPanel=0x7f0b0031;
        public static int progress_circular=0x7f0b0005;
        public static int progress_horizontal=0x7f0b0006;
        public static int radio=0x7f0b003f;
        public static int right=0x7f0b0024;
        public static int screen=0x7f0b0015;
        public static int scrollIndicatorDown=0x7f0b0039;
        public static int scrollIndicatorUp=0x7f0b0036;
        public static int scrollView=0x7f0b0037;
        public static int search_badge=0x7f0b0049;
        public static int search_bar=0x7f0b0048;
        public static int search_button=0x7f0b004a;
        public static int search_close_btn=0x7f0b004f;
        public static int search_edit_frame=0x7f0b004b;
        public static int search_go_btn=0x7f0b0051;
        public static int search_mag_icon=0x7f0b004c;
        public static int search_plate=0x7f0b004d;
        public static int search_src_text=0x7f0b004e;
        public static int search_voice_btn=0x7f0b0052;
        public static int select_dialog_listview=0x7f0b0053;
        public static int shortcut=0x7f0b003e;
        public static int showCustom=0x7f0b000f;
        public static int showHome=0x7f0b0010;
        public static int showTitle=0x7f0b0011;
        public static int spacer=0x7f0b0030;
        public static int split_action_bar=0x7f0b0007;
        public static int src_atop=0x7f0b0016;
        public static int src_in=0x7f0b0017;
        public static int src_over=0x7f0b0018;
        public static int status_bar_latest_event_content=0x7f0b0056;
        public static int submit_area=0x7f0b0050;
        public static int swipe=0x7f0b0061;
        public static int tabMode=0x7f0b000b;
        public static int text=0x7f0b005e;
        public static int text2=0x7f0b005c;
        public static int textSpacerNoButtons=0x7f0b0038;
        public static int time=0x7f0b005a;
        public static int title=0x7f0b002e;
        public static int title_template=0x7f0b0033;
        public static int topPanel=0x7f0b0032;
        public static int up=0x7f0b0008;
        public static int useLogo=0x7f0b0012;
        public static int withText=0x7f0b0020;
        public static int wrap_content=0x7f0b0013;
    }
    public static final class integer {
        public static int abc_config_activityDefaultDur=0x7f090001;
        public static int abc_config_activityShortDur=0x7f090002;
        public static int abc_max_action_buttons=0x7f090000;
        public static int cancel_button_image_alpha=0x7f090003;
        public static int status_bar_notification_info_maxnum=0x7f090004;
    }
    public static final class layout {
        public static int abc_action_bar_title_item=0x7f030000;
        public static int abc_action_bar_up_container=0x7f030001;
        public static int abc_action_bar_view_list_nav_layout=0x7f030002;
        public static int abc_action_menu_item_layout=0x7f030003;
        public static int abc_action_menu_layout=0x7f030004;
        public static int abc_action_mode_bar=0x7f030005;
        public static int abc_action_mode_close_item_material=0x7f030006;
        public static int abc_activity_chooser_view=0x7f030007;
        public static int abc_activity_chooser_view_list_item=0x7f030008;
        public static int abc_alert_dialog_button_bar_material=0x7f030009;
        public static int abc_alert_dialog_material=0x7f03000a;
        public static int abc_dialog_title_material=0x7f03000b;
        public static int abc_expanded_menu_layout=0x7f03000c;
        public static int abc_list_menu_item_checkbox=0x7f03000d;
        public static int abc_list_menu_item_icon=0x7f03000e;
        public static int abc_list_menu_item_layout=0x7f03000f;
        public static int abc_list_menu_item_radio=0x7f030010;
        public static int abc_popup_menu_item_layout=0x7f030011;
        public static int abc_screen_content_include=0x7f030012;
        public static int abc_screen_simple=0x7f030013;
        public static int abc_screen_simple_overlay_action_mode=0x7f030014;
        public static int abc_screen_toolbar=0x7f030015;
        public static int abc_search_dropdown_item_icons_2line=0x7f030016;
        public static int abc_search_view=0x7f030017;
        public static int abc_select_dialog_material=0x7f030018;
        public static int notification_media_action=0x7f030019;
        public static int notification_media_cancel_action=0x7f03001a;
        public static int notification_template_big_media=0x7f03001b;
        public static int notification_template_big_media_narrow=0x7f03001c;
        public static int notification_template_lines=0x7f03001d;
        public static int notification_template_media=0x7f03001e;
        public static int notification_template_part_chronometer=0x7f03001f;
        public static int notification_template_part_time=0x7f030020;
        public static int select_dialog_item_material=0x7f030021;
        public static int select_dialog_multichoice_material=0x7f030022;
        public static int select_dialog_singlechoice_material=0x7f030023;
        public static int support_simple_spinner_dropdown_item=0x7f030024;
        public static int swipeback_layout=0x7f030025;
    }
    public static final class string {
        public static int abc_action_bar_home_description=0x7f050000;
        public static int abc_action_bar_home_description_format=0x7f050001;
        public static int abc_action_bar_home_subtitle_description_format=0x7f050002;
        public static int abc_action_bar_up_description=0x7f050003;
        public static int abc_action_menu_overflow_description=0x7f050004;
        public static int abc_action_mode_done=0x7f050005;
        public static int abc_activity_chooser_view_see_all=0x7f050006;
        public static int abc_activitychooserview_choose_application=0x7f050007;
        public static int abc_capital_off=0x7f050008;
        public static int abc_capital_on=0x7f050009;
        public static int abc_search_hint=0x7f05000a;
        public static int abc_searchview_description_clear=0x7f05000b;
        public static int abc_searchview_description_query=0x7f05000c;
        public static int abc_searchview_description_search=0x7f05000d;
        public static int abc_searchview_description_submit=0x7f05000e;
        public static int abc_searchview_description_voice=0x7f05000f;
        public static int abc_shareactionprovider_share_with=0x7f050010;
        public static int abc_shareactionprovider_share_with_application=0x7f050011;
        public static int abc_toolbar_collapse_description=0x7f050012;
        public static int status_bar_notification_info_overflow=0x7f050013;
    }
    public static final class style {
        public static int AlertDialog_AppCompat=0x7f080086;
        public static int AlertDialog_AppCompat_Light=0x7f080087;
        public static int Animation_AppCompat_Dialog=0x7f080088;
        public static int Animation_AppCompat_DropDownUp=0x7f080089;
        public static int Base_AlertDialog_AppCompat=0x7f08008a;
        public static int Base_AlertDialog_AppCompat_Light=0x7f08008b;
        public static int Base_Animation_AppCompat_Dialog=0x7f08008c;
        public static int Base_Animation_AppCompat_DropDownUp=0x7f08008d;
        public static int Base_DialogWindowTitle_AppCompat=0x7f08008e;
        public static int Base_DialogWindowTitleBackground_AppCompat=0x7f08008f;
        public static int Base_TextAppearance_AppCompat=0x7f080036;
        public static int Base_TextAppearance_AppCompat_Body1=0x7f080037;
        public static int Base_TextAppearance_AppCompat_Body2=0x7f080038;
        public static int Base_TextAppearance_AppCompat_Button=0x7f080020;
        public static int Base_TextAppearance_AppCompat_Caption=0x7f080039;
        public static int Base_TextAppearance_AppCompat_Display1=0x7f08003a;
        public static int Base_TextAppearance_AppCompat_Display2=0x7f08003b;
        public static int Base_TextAppearance_AppCompat_Display3=0x7f08003c;
        public static int Base_TextAppearance_AppCompat_Display4=0x7f08003d;
        public static int Base_TextAppearance_AppCompat_Headline=0x7f08003e;
        public static int Base_TextAppearance_AppCompat_Inverse=0x7f08000b;
        public static int Base_TextAppearance_AppCompat_Large=0x7f08003f;
        public static int Base_TextAppearance_AppCompat_Large_Inverse=0x7f08000c;
        public static int Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Large=0x7f080040;
        public static int Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Small=0x7f080041;
        public static int Base_TextAppearance_AppCompat_Medium=0x7f080042;
        public static int Base_TextAppearance_AppCompat_Medium_Inverse=0x7f08000d;
        public static int Base_TextAppearance_AppCompat_Menu=0x7f080043;
        public static int Base_TextAppearance_AppCompat_SearchResult=0x7f080090;
        public static int Base_TextAppearance_AppCompat_SearchResult_Subtitle=0x7f080044;
        public static int Base_TextAppearance_AppCompat_SearchResult_Title=0x7f080045;
        public static int Base_TextAppearance_AppCompat_Small=0x7f080046;
        public static int Base_TextAppearance_AppCompat_Small_Inverse=0x7f08000e;
        public static int Base_TextAppearance_AppCompat_Subhead=0x7f080047;
        public static int Base_TextAppearance_AppCompat_Subhead_Inverse=0x7f08000f;
        public static int Base_TextAppearance_AppCompat_Title=0x7f080048;
        public static int Base_TextAppearance_AppCompat_Title_Inverse=0x7f080010;
        public static int Base_TextAppearance_AppCompat_Widget_ActionBar_Menu=0x7f08007f;
        public static int Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle=0x7f080049;
        public static int Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse=0x7f08004a;
        public static int Base_TextAppearance_AppCompat_Widget_ActionBar_Title=0x7f08004b;
        public static int Base_TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse=0x7f08004c;
        public static int Base_TextAppearance_AppCompat_Widget_ActionMode_Subtitle=0x7f08004d;
        public static int Base_TextAppearance_AppCompat_Widget_ActionMode_Title=0x7f08004e;
        public static int Base_TextAppearance_AppCompat_Widget_Button=0x7f08004f;
        public static int Base_TextAppearance_AppCompat_Widget_Button_Inverse=0x7f080080;
        public static int Base_TextAppearance_AppCompat_Widget_DropDownItem=0x7f080091;
        public static int Base_TextAppearance_AppCompat_Widget_PopupMenu_Large=0x7f080050;
        public static int Base_TextAppearance_AppCompat_Widget_PopupMenu_Small=0x7f080051;
        public static int Base_TextAppearance_AppCompat_Widget_Switch=0x7f080052;
        public static int Base_TextAppearance_AppCompat_Widget_TextView_SpinnerItem=0x7f080053;
        public static int Base_TextAppearance_Widget_AppCompat_ExpandedMenu_Item=0x7f080092;
        public static int Base_TextAppearance_Widget_AppCompat_Toolbar_Subtitle=0x7f080054;
        public static int Base_TextAppearance_Widget_AppCompat_Toolbar_Title=0x7f080055;
        public static int Base_Theme_AppCompat=0x7f080056;
        public static int Base_Theme_AppCompat_CompactMenu=0x7f080093;
        public static int Base_Theme_AppCompat_Dialog=0x7f080011;
        public static int Base_Theme_AppCompat_Dialog_Alert=0x7f080094;
        public static int Base_Theme_AppCompat_Dialog_FixedSize=0x7f080095;
        public static int Base_Theme_AppCompat_Dialog_MinWidth=0x7f080096;
        public static int Base_Theme_AppCompat_DialogWhenLarge=0x7f080001;
        public static int Base_Theme_AppCompat_Light=0x7f080057;
        public static int Base_Theme_AppCompat_Light_DarkActionBar=0x7f080097;
        public static int Base_Theme_AppCompat_Light_Dialog=0x7f080012;
        public static int Base_Theme_AppCompat_Light_Dialog_Alert=0x7f080098;
        public static int Base_Theme_AppCompat_Light_Dialog_FixedSize=0x7f080099;
        public static int Base_Theme_AppCompat_Light_Dialog_MinWidth=0x7f08009a;
        public static int Base_Theme_AppCompat_Light_DialogWhenLarge=0x7f080002;
        public static int Base_ThemeOverlay_AppCompat=0x7f08009b;
        public static int Base_ThemeOverlay_AppCompat_ActionBar=0x7f08009c;
        public static int Base_ThemeOverlay_AppCompat_Dark=0x7f08009d;
        public static int Base_ThemeOverlay_AppCompat_Dark_ActionBar=0x7f08009e;
        public static int Base_ThemeOverlay_AppCompat_Light=0x7f08009f;
        public static int Base_V11_Theme_AppCompat_Dialog=0x7f080013;
        public static int Base_V11_Theme_AppCompat_Light_Dialog=0x7f080014;
        public static int Base_V12_Widget_AppCompat_AutoCompleteTextView=0x7f08001c;
        public static int Base_V12_Widget_AppCompat_EditText=0x7f08001d;
        public static int Base_V21_Theme_AppCompat=0x7f080058;
        public static int Base_V21_Theme_AppCompat_Dialog=0x7f080059;
        public static int Base_V21_Theme_AppCompat_Light=0x7f08005a;
        public static int Base_V21_Theme_AppCompat_Light_Dialog=0x7f08005b;
        public static int Base_V22_Theme_AppCompat=0x7f08007d;
        public static int Base_V22_Theme_AppCompat_Light=0x7f08007e;
        public static int Base_V23_Theme_AppCompat=0x7f080081;
        public static int Base_V23_Theme_AppCompat_Light=0x7f080082;
        public static int Base_V7_Theme_AppCompat=0x7f0800a0;
        public static int Base_V7_Theme_AppCompat_Dialog=0x7f0800a1;
        public static int Base_V7_Theme_AppCompat_Light=0x7f0800a2;
        public static int Base_V7_Theme_AppCompat_Light_Dialog=0x7f0800a3;
        public static int Base_V7_Widget_AppCompat_AutoCompleteTextView=0x7f0800a4;
        public static int Base_V7_Widget_AppCompat_EditText=0x7f0800a5;
        public static int Base_Widget_AppCompat_ActionBar=0x7f0800a6;
        public static int Base_Widget_AppCompat_ActionBar_Solid=0x7f0800a7;
        public static int Base_Widget_AppCompat_ActionBar_TabBar=0x7f0800a8;
        public static int Base_Widget_AppCompat_ActionBar_TabText=0x7f08005c;
        public static int Base_Widget_AppCompat_ActionBar_TabView=0x7f08005d;
        public static int Base_Widget_AppCompat_ActionButton=0x7f08005e;
        public static int Base_Widget_AppCompat_ActionButton_CloseMode=0x7f08005f;
        public static int Base_Widget_AppCompat_ActionButton_Overflow=0x7f080060;
        public static int Base_Widget_AppCompat_ActionMode=0x7f0800a9;
        public static int Base_Widget_AppCompat_ActivityChooserView=0x7f0800aa;
        public static int Base_Widget_AppCompat_AutoCompleteTextView=0x7f08001e;
        public static int Base_Widget_AppCompat_Button=0x7f080061;
        public static int Base_Widget_AppCompat_Button_Borderless=0x7f080062;
        public static int Base_Widget_AppCompat_Button_Borderless_Colored=0x7f080063;
        public static int Base_Widget_AppCompat_Button_ButtonBar_AlertDialog=0x7f0800ab;
        public static int Base_Widget_AppCompat_Button_Colored=0x7f080083;
        public static int Base_Widget_AppCompat_Button_Small=0x7f080064;
        public static int Base_Widget_AppCompat_ButtonBar=0x7f080065;
        public static int Base_Widget_AppCompat_ButtonBar_AlertDialog=0x7f0800ac;
        public static int Base_Widget_AppCompat_CompoundButton_CheckBox=0x7f080066;
        public static int Base_Widget_AppCompat_CompoundButton_RadioButton=0x7f080067;
        public static int Base_Widget_AppCompat_CompoundButton_Switch=0x7f0800ad;
        public static int Base_Widget_AppCompat_DrawerArrowToggle=0x7f080000;
        public static int Base_Widget_AppCompat_DrawerArrowToggle_Common=0x7f0800ae;
        public static int Base_Widget_AppCompat_DropDownItem_Spinner=0x7f080068;
        public static int Base_Widget_AppCompat_EditText=0x7f08001f;
        public static int Base_Widget_AppCompat_ImageButton=0x7f080069;
        public static int Base_Widget_AppCompat_Light_ActionBar=0x7f0800af;
        public static int Base_Widget_AppCompat_Light_ActionBar_Solid=0x7f0800b0;
        public static int Base_Widget_AppCompat_Light_ActionBar_TabBar=0x7f0800b1;
        public static int Base_Widget_AppCompat_Light_ActionBar_TabText=0x7f08006a;
        public static int Base_Widget_AppCompat_Light_ActionBar_TabText_Inverse=0x7f08006b;
        public static int Base_Widget_AppCompat_Light_ActionBar_TabView=0x7f08006c;
        public static int Base_Widget_AppCompat_Light_PopupMenu=0x7f08006d;
        public static int Base_Widget_AppCompat_Light_PopupMenu_Overflow=0x7f08006e;
        public static int Base_Widget_AppCompat_ListPopupWindow=0x7f08006f;
        public static int Base_Widget_AppCompat_ListView=0x7f080070;
        public static int Base_Widget_AppCompat_ListView_DropDown=0x7f080071;
        public static int Base_Widget_AppCompat_ListView_Menu=0x7f080072;
        public static int Base_Widget_AppCompat_PopupMenu=0x7f080073;
        public static int Base_Widget_AppCompat_PopupMenu_Overflow=0x7f080074;
        public static int Base_Widget_AppCompat_PopupWindow=0x7f0800b2;
        public static int Base_Widget_AppCompat_ProgressBar=0x7f080015;
        public static int Base_Widget_AppCompat_ProgressBar_Horizontal=0x7f080016;
        public static int Base_Widget_AppCompat_RatingBar=0x7f080075;
        public static int Base_Widget_AppCompat_RatingBar_Indicator=0x7f080084;
        public static int Base_Widget_AppCompat_RatingBar_Small=0x7f080085;
        public static int Base_Widget_AppCompat_SearchView=0x7f0800b3;
        public static int Base_Widget_AppCompat_SearchView_ActionBar=0x7f0800b4;
        public static int Base_Widget_AppCompat_SeekBar=0x7f080076;
        public static int Base_Widget_AppCompat_Spinner=0x7f080077;
        public static int Base_Widget_AppCompat_Spinner_Underlined=0x7f080003;
        public static int Base_Widget_AppCompat_TextView_SpinnerItem=0x7f080078;
        public static int Base_Widget_AppCompat_Toolbar=0x7f0800b5;
        public static int Base_Widget_AppCompat_Toolbar_Button_Navigation=0x7f080079;
        public static int Platform_AppCompat=0x7f080017;
        public static int Platform_AppCompat_Light=0x7f080018;
        public static int Platform_ThemeOverlay_AppCompat=0x7f08007a;
        public static int Platform_ThemeOverlay_AppCompat_Dark=0x7f08007b;
        public static int Platform_ThemeOverlay_AppCompat_Light=0x7f08007c;
        public static int Platform_V11_AppCompat=0x7f080019;
        public static int Platform_V11_AppCompat_Light=0x7f08001a;
        public static int Platform_V14_AppCompat=0x7f080021;
        public static int Platform_V14_AppCompat_Light=0x7f080022;
        public static int Platform_Widget_AppCompat_Spinner=0x7f08001b;
        public static int RtlOverlay_DialogWindowTitle_AppCompat=0x7f080028;
        public static int RtlOverlay_Widget_AppCompat_ActionBar_TitleItem=0x7f080029;
        public static int RtlOverlay_Widget_AppCompat_DialogTitle_Icon=0x7f08002a;
        public static int RtlOverlay_Widget_AppCompat_PopupMenuItem=0x7f08002b;
        public static int RtlOverlay_Widget_AppCompat_PopupMenuItem_InternalGroup=0x7f08002c;
        public static int RtlOverlay_Widget_AppCompat_PopupMenuItem_Text=0x7f08002d;
        public static int RtlOverlay_Widget_AppCompat_Search_DropDown=0x7f08002e;
        public static int RtlOverlay_Widget_AppCompat_Search_DropDown_Icon1=0x7f08002f;
        public static int RtlOverlay_Widget_AppCompat_Search_DropDown_Icon2=0x7f080030;
        public static int RtlOverlay_Widget_AppCompat_Search_DropDown_Query=0x7f080031;
        public static int RtlOverlay_Widget_AppCompat_Search_DropDown_Text=0x7f080032;
        public static int RtlOverlay_Widget_AppCompat_SearchView_MagIcon=0x7f080033;
        public static int RtlUnderlay_Widget_AppCompat_ActionButton=0x7f080034;
        public static int RtlUnderlay_Widget_AppCompat_ActionButton_Overflow=0x7f080035;
        public static int SwipeBackLayout=0x7f0800b6;
        public static int TextAppearance_AppCompat=0x7f0800b7;
        public static int TextAppearance_AppCompat_Body1=0x7f0800b8;
        public static int TextAppearance_AppCompat_Body2=0x7f0800b9;
        public static int TextAppearance_AppCompat_Button=0x7f0800ba;
        public static int TextAppearance_AppCompat_Caption=0x7f0800bb;
        public static int TextAppearance_AppCompat_Display1=0x7f0800bc;
        public static int TextAppearance_AppCompat_Display2=0x7f0800bd;
        public static int TextAppearance_AppCompat_Display3=0x7f0800be;
        public static int TextAppearance_AppCompat_Display4=0x7f0800bf;
        public static int TextAppearance_AppCompat_Headline=0x7f0800c0;
        public static int TextAppearance_AppCompat_Inverse=0x7f0800c1;
        public static int TextAppearance_AppCompat_Large=0x7f0800c2;
        public static int TextAppearance_AppCompat_Large_Inverse=0x7f0800c3;
        public static int TextAppearance_AppCompat_Light_SearchResult_Subtitle=0x7f0800c4;
        public static int TextAppearance_AppCompat_Light_SearchResult_Title=0x7f0800c5;
        public static int TextAppearance_AppCompat_Light_Widget_PopupMenu_Large=0x7f0800c6;
        public static int TextAppearance_AppCompat_Light_Widget_PopupMenu_Small=0x7f0800c7;
        public static int TextAppearance_AppCompat_Medium=0x7f0800c8;
        public static int TextAppearance_AppCompat_Medium_Inverse=0x7f0800c9;
        public static int TextAppearance_AppCompat_Menu=0x7f0800ca;
        public static int TextAppearance_AppCompat_SearchResult_Subtitle=0x7f0800cb;
        public static int TextAppearance_AppCompat_SearchResult_Title=0x7f0800cc;
        public static int TextAppearance_AppCompat_Small=0x7f0800cd;
        public static int TextAppearance_AppCompat_Small_Inverse=0x7f0800ce;
        public static int TextAppearance_AppCompat_Subhead=0x7f0800cf;
        public static int TextAppearance_AppCompat_Subhead_Inverse=0x7f0800d0;
        public static int TextAppearance_AppCompat_Title=0x7f0800d1;
        public static int TextAppearance_AppCompat_Title_Inverse=0x7f0800d2;
        public static int TextAppearance_AppCompat_Widget_ActionBar_Menu=0x7f0800d3;
        public static int TextAppearance_AppCompat_Widget_ActionBar_Subtitle=0x7f0800d4;
        public static int TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse=0x7f0800d5;
        public static int TextAppearance_AppCompat_Widget_ActionBar_Title=0x7f0800d6;
        public static int TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse=0x7f0800d7;
        public static int TextAppearance_AppCompat_Widget_ActionMode_Subtitle=0x7f0800d8;
        public static int TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse=0x7f0800d9;
        public static int TextAppearance_AppCompat_Widget_ActionMode_Title=0x7f0800da;
        public static int TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse=0x7f0800db;
        public static int TextAppearance_AppCompat_Widget_Button=0x7f0800dc;
        public static int TextAppearance_AppCompat_Widget_Button_Inverse=0x7f0800dd;
        public static int TextAppearance_AppCompat_Widget_DropDownItem=0x7f0800de;
        public static int TextAppearance_AppCompat_Widget_PopupMenu_Large=0x7f0800df;
        public static int TextAppearance_AppCompat_Widget_PopupMenu_Small=0x7f0800e0;
        public static int TextAppearance_AppCompat_Widget_Switch=0x7f0800e1;
        public static int TextAppearance_AppCompat_Widget_TextView_SpinnerItem=0x7f0800e2;
        public static int TextAppearance_StatusBar_EventContent=0x7f080023;
        public static int TextAppearance_StatusBar_EventContent_Info=0x7f080024;
        public static int TextAppearance_StatusBar_EventContent_Line2=0x7f080025;
        public static int TextAppearance_StatusBar_EventContent_Time=0x7f080026;
        public static int TextAppearance_StatusBar_EventContent_Title=0x7f080027;
        public static int TextAppearance_Widget_AppCompat_ExpandedMenu_Item=0x7f0800e3;
        public static int TextAppearance_Widget_AppCompat_Toolbar_Subtitle=0x7f0800e4;
        public static int TextAppearance_Widget_AppCompat_Toolbar_Title=0x7f0800e5;
        public static int Theme_AppCompat=0x7f0800e6;
        public static int Theme_AppCompat_CompactMenu=0x7f0800e7;
        public static int Theme_AppCompat_DayNight=0x7f080004;
        public static int Theme_AppCompat_DayNight_DarkActionBar=0x7f080005;
        public static int Theme_AppCompat_DayNight_Dialog=0x7f080006;
        public static int Theme_AppCompat_DayNight_Dialog_Alert=0x7f080007;
        public static int Theme_AppCompat_DayNight_Dialog_MinWidth=0x7f080008;
        public static int Theme_AppCompat_DayNight_DialogWhenLarge=0x7f080009;
        public static int Theme_AppCompat_DayNight_NoActionBar=0x7f08000a;
        public static int Theme_AppCompat_Dialog=0x7f0800e8;
        public static int Theme_AppCompat_Dialog_Alert=0x7f0800e9;
        public static int Theme_AppCompat_Dialog_MinWidth=0x7f0800ea;
        public static int Theme_AppCompat_DialogWhenLarge=0x7f0800eb;
        public static int Theme_AppCompat_Light=0x7f0800ec;
        public static int Theme_AppCompat_Light_DarkActionBar=0x7f0800ed;
        public static int Theme_AppCompat_Light_Dialog=0x7f0800ee;
        public static int Theme_AppCompat_Light_Dialog_Alert=0x7f0800ef;
        public static int Theme_AppCompat_Light_Dialog_MinWidth=0x7f0800f0;
        public static int Theme_AppCompat_Light_DialogWhenLarge=0x7f0800f1;
        public static int Theme_AppCompat_Light_NoActionBar=0x7f0800f2;
        public static int Theme_AppCompat_NoActionBar=0x7f0800f3;
        public static int ThemeOverlay_AppCompat=0x7f0800f4;
        public static int ThemeOverlay_AppCompat_ActionBar=0x7f0800f5;
        public static int ThemeOverlay_AppCompat_Dark=0x7f0800f6;
        public static int ThemeOverlay_AppCompat_Dark_ActionBar=0x7f0800f7;
        public static int ThemeOverlay_AppCompat_Light=0x7f0800f8;
        public static int Widget_AppCompat_ActionBar=0x7f0800f9;
        public static int Widget_AppCompat_ActionBar_Solid=0x7f0800fa;
        public static int Widget_AppCompat_ActionBar_TabBar=0x7f0800fb;
        public static int Widget_AppCompat_ActionBar_TabText=0x7f0800fc;
        public static int Widget_AppCompat_ActionBar_TabView=0x7f0800fd;
        public static int Widget_AppCompat_ActionButton=0x7f0800fe;
        public static int Widget_AppCompat_ActionButton_CloseMode=0x7f0800ff;
        public static int Widget_AppCompat_ActionButton_Overflow=0x7f080100;
        public static int Widget_AppCompat_ActionMode=0x7f080101;
        public static int Widget_AppCompat_ActivityChooserView=0x7f080102;
        public static int Widget_AppCompat_AutoCompleteTextView=0x7f080103;
        public static int Widget_AppCompat_Button=0x7f080104;
        public static int Widget_AppCompat_Button_Borderless=0x7f080105;
        public static int Widget_AppCompat_Button_Borderless_Colored=0x7f080106;
        public static int Widget_AppCompat_Button_ButtonBar_AlertDialog=0x7f080107;
        public static int Widget_AppCompat_Button_Colored=0x7f080108;
        public static int Widget_AppCompat_Button_Small=0x7f080109;
        public static int Widget_AppCompat_ButtonBar=0x7f08010a;
        public static int Widget_AppCompat_ButtonBar_AlertDialog=0x7f08010b;
        public static int Widget_AppCompat_CompoundButton_CheckBox=0x7f08010c;
        public static int Widget_AppCompat_CompoundButton_RadioButton=0x7f08010d;
        public static int Widget_AppCompat_CompoundButton_Switch=0x7f08010e;
        public static int Widget_AppCompat_DrawerArrowToggle=0x7f08010f;
        public static int Widget_AppCompat_DropDownItem_Spinner=0x7f080110;
        public static int Widget_AppCompat_EditText=0x7f080111;
        public static int Widget_AppCompat_ImageButton=0x7f080112;
        public static int Widget_AppCompat_Light_ActionBar=0x7f080113;
        public static int Widget_AppCompat_Light_ActionBar_Solid=0x7f080114;
        public static int Widget_AppCompat_Light_ActionBar_Solid_Inverse=0x7f080115;
        public static int Widget_AppCompat_Light_ActionBar_TabBar=0x7f080116;
        public static int Widget_AppCompat_Light_ActionBar_TabBar_Inverse=0x7f080117;
        public static int Widget_AppCompat_Light_ActionBar_TabText=0x7f080118;
        public static int Widget_AppCompat_Light_ActionBar_TabText_Inverse=0x7f080119;
        public static int Widget_AppCompat_Light_ActionBar_TabView=0x7f08011a;
        public static int Widget_AppCompat_Light_ActionBar_TabView_Inverse=0x7f08011b;
        public static int Widget_AppCompat_Light_ActionButton=0x7f08011c;
        public static int Widget_AppCompat_Light_ActionButton_CloseMode=0x7f08011d;
        public static int Widget_AppCompat_Light_ActionButton_Overflow=0x7f08011e;
        public static int Widget_AppCompat_Light_ActionMode_Inverse=0x7f08011f;
        public static int Widget_AppCompat_Light_ActivityChooserView=0x7f080120;
        public static int Widget_AppCompat_Light_AutoCompleteTextView=0x7f080121;
        public static int Widget_AppCompat_Light_DropDownItem_Spinner=0x7f080122;
        public static int Widget_AppCompat_Light_ListPopupWindow=0x7f080123;
        public static int Widget_AppCompat_Light_ListView_DropDown=0x7f080124;
        public static int Widget_AppCompat_Light_PopupMenu=0x7f080125;
        public static int Widget_AppCompat_Light_PopupMenu_Overflow=0x7f080126;
        public static int Widget_AppCompat_Light_SearchView=0x7f080127;
        public static int Widget_AppCompat_Light_Spinner_DropDown_ActionBar=0x7f080128;
        public static int Widget_AppCompat_ListPopupWindow=0x7f080129;
        public static int Widget_AppCompat_ListView=0x7f08012a;
        public static int Widget_AppCompat_ListView_DropDown=0x7f08012b;
        public static int Widget_AppCompat_ListView_Menu=0x7f08012c;
        public static int Widget_AppCompat_PopupMenu=0x7f08012d;
        public static int Widget_AppCompat_PopupMenu_Overflow=0x7f08012e;
        public static int Widget_AppCompat_PopupWindow=0x7f08012f;
        public static int Widget_AppCompat_ProgressBar=0x7f080130;
        public static int Widget_AppCompat_ProgressBar_Horizontal=0x7f080131;
        public static int Widget_AppCompat_RatingBar=0x7f080132;
        public static int Widget_AppCompat_RatingBar_Indicator=0x7f080133;
        public static int Widget_AppCompat_RatingBar_Small=0x7f080134;
        public static int Widget_AppCompat_SearchView=0x7f080135;
        public static int Widget_AppCompat_SearchView_ActionBar=0x7f080136;
        public static int Widget_AppCompat_SeekBar=0x7f080137;
        public static int Widget_AppCompat_Spinner=0x7f080138;
        public static int Widget_AppCompat_Spinner_DropDown=0x7f080139;
        public static int Widget_AppCompat_Spinner_DropDown_ActionBar=0x7f08013a;
        public static int Widget_AppCompat_Spinner_Underlined=0x7f08013b;
        public static int Widget_AppCompat_TextView_SpinnerItem=0x7f08013c;
        public static int Widget_AppCompat_Toolbar=0x7f08013d;
        public static int Widget_AppCompat_Toolbar_Button_Navigation=0x7f08013e;
    }
    public static final class styleable {
        /** Attributes that can be used with a ActionBar.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ActionBar_background me.imid.swipebacklayout.lib:background}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_backgroundSplit me.imid.swipebacklayout.lib:backgroundSplit}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_backgroundStacked me.imid.swipebacklayout.lib:backgroundStacked}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_contentInsetEnd me.imid.swipebacklayout.lib:contentInsetEnd}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_contentInsetLeft me.imid.swipebacklayout.lib:contentInsetLeft}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_contentInsetRight me.imid.swipebacklayout.lib:contentInsetRight}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_contentInsetStart me.imid.swipebacklayout.lib:contentInsetStart}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_customNavigationLayout me.imid.swipebacklayout.lib:customNavigationLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_displayOptions me.imid.swipebacklayout.lib:displayOptions}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_divider me.imid.swipebacklayout.lib:divider}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_elevation me.imid.swipebacklayout.lib:elevation}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_height me.imid.swipebacklayout.lib:height}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_hideOnContentScroll me.imid.swipebacklayout.lib:hideOnContentScroll}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_homeAsUpIndicator me.imid.swipebacklayout.lib:homeAsUpIndicator}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_homeLayout me.imid.swipebacklayout.lib:homeLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_icon me.imid.swipebacklayout.lib:icon}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_indeterminateProgressStyle me.imid.swipebacklayout.lib:indeterminateProgressStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_itemPadding me.imid.swipebacklayout.lib:itemPadding}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_logo me.imid.swipebacklayout.lib:logo}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_navigationMode me.imid.swipebacklayout.lib:navigationMode}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_popupTheme me.imid.swipebacklayout.lib:popupTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_progressBarPadding me.imid.swipebacklayout.lib:progressBarPadding}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_progressBarStyle me.imid.swipebacklayout.lib:progressBarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_subtitle me.imid.swipebacklayout.lib:subtitle}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_subtitleTextStyle me.imid.swipebacklayout.lib:subtitleTextStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_title me.imid.swipebacklayout.lib:title}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionBar_titleTextStyle me.imid.swipebacklayout.lib:titleTextStyle}</code></td><td></td></tr>
           </table>
           @see #ActionBar_background
           @see #ActionBar_backgroundSplit
           @see #ActionBar_backgroundStacked
           @see #ActionBar_contentInsetEnd
           @see #ActionBar_contentInsetLeft
           @see #ActionBar_contentInsetRight
           @see #ActionBar_contentInsetStart
           @see #ActionBar_customNavigationLayout
           @see #ActionBar_displayOptions
           @see #ActionBar_divider
           @see #ActionBar_elevation
           @see #ActionBar_height
           @see #ActionBar_hideOnContentScroll
           @see #ActionBar_homeAsUpIndicator
           @see #ActionBar_homeLayout
           @see #ActionBar_icon
           @see #ActionBar_indeterminateProgressStyle
           @see #ActionBar_itemPadding
           @see #ActionBar_logo
           @see #ActionBar_navigationMode
           @see #ActionBar_popupTheme
           @see #ActionBar_progressBarPadding
           @see #ActionBar_progressBarStyle
           @see #ActionBar_subtitle
           @see #ActionBar_subtitleTextStyle
           @see #ActionBar_title
           @see #ActionBar_titleTextStyle
         */
        public static final int[] ActionBar = {
            0x7f010002, 0x7f010004, 0x7f010005, 0x7f010006,
            0x7f010007, 0x7f010008, 0x7f010009, 0x7f01000a,
            0x7f01000b, 0x7f01000c, 0x7f01000d, 0x7f01000e,
            0x7f01000f, 0x7f010010, 0x7f010011, 0x7f010012,
            0x7f010013, 0x7f010014, 0x7f010015, 0x7f010016,
            0x7f010017, 0x7f010018, 0x7f010019, 0x7f01001a,
            0x7f01001b, 0x7f01001c, 0x7f010055
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#background}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:background
        */
        public static int ActionBar_background = 10;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#backgroundSplit}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:backgroundSplit
        */
        public static int ActionBar_backgroundSplit = 12;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#backgroundStacked}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:backgroundStacked
        */
        public static int ActionBar_backgroundStacked = 11;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetEnd}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetEnd
        */
        public static int ActionBar_contentInsetEnd = 21;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetLeft}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetLeft
        */
        public static int ActionBar_contentInsetLeft = 22;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetRight}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetRight
        */
        public static int ActionBar_contentInsetRight = 23;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetStart}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetStart
        */
        public static int ActionBar_contentInsetStart = 20;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#customNavigationLayout}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:customNavigationLayout
        */
        public static int ActionBar_customNavigationLayout = 13;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#displayOptions}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be one or more (separated by '|') of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>none</code></td><td>0</td><td></td></tr>
<tr><td><code>useLogo</code></td><td>0x1</td><td></td></tr>
<tr><td><code>showHome</code></td><td>0x2</td><td></td></tr>
<tr><td><code>homeAsUp</code></td><td>0x4</td><td></td></tr>
<tr><td><code>showTitle</code></td><td>0x8</td><td></td></tr>
<tr><td><code>showCustom</code></td><td>0x10</td><td></td></tr>
<tr><td><code>disableHome</code></td><td>0x20</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:displayOptions
        */
        public static int ActionBar_displayOptions = 3;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#divider}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:divider
        */
        public static int ActionBar_divider = 9;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#elevation}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:elevation
        */
        public static int ActionBar_elevation = 24;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#height}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:height
        */
        public static int ActionBar_height = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#hideOnContentScroll}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:hideOnContentScroll
        */
        public static int ActionBar_hideOnContentScroll = 19;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#homeAsUpIndicator}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:homeAsUpIndicator
        */
        public static int ActionBar_homeAsUpIndicator = 26;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#homeLayout}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:homeLayout
        */
        public static int ActionBar_homeLayout = 14;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#icon}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:icon
        */
        public static int ActionBar_icon = 7;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#indeterminateProgressStyle}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:indeterminateProgressStyle
        */
        public static int ActionBar_indeterminateProgressStyle = 16;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#itemPadding}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:itemPadding
        */
        public static int ActionBar_itemPadding = 18;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#logo}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:logo
        */
        public static int ActionBar_logo = 8;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#navigationMode}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>normal</code></td><td>0</td><td></td></tr>
<tr><td><code>listMode</code></td><td>1</td><td></td></tr>
<tr><td><code>tabMode</code></td><td>2</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:navigationMode
        */
        public static int ActionBar_navigationMode = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#popupTheme}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:popupTheme
        */
        public static int ActionBar_popupTheme = 25;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#progressBarPadding}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:progressBarPadding
        */
        public static int ActionBar_progressBarPadding = 17;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#progressBarStyle}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:progressBarStyle
        */
        public static int ActionBar_progressBarStyle = 15;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#subtitle}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:subtitle
        */
        public static int ActionBar_subtitle = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#subtitleTextStyle}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:subtitleTextStyle
        */
        public static int ActionBar_subtitleTextStyle = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#title}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:title
        */
        public static int ActionBar_title = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleTextStyle}
          attribute's value can be found in the {@link #ActionBar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:titleTextStyle
        */
        public static int ActionBar_titleTextStyle = 5;
        /** Attributes that can be used with a ActionBarLayout.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ActionBarLayout_android_layout_gravity android:layout_gravity}</code></td><td></td></tr>
           </table>
           @see #ActionBarLayout_android_layout_gravity
         */
        public static final int[] ActionBarLayout = {
            0x010100b3
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout_gravity}
          attribute's value can be found in the {@link #ActionBarLayout} array.
          @attr name android:layout_gravity
        */
        public static int ActionBarLayout_android_layout_gravity = 0;
        /** Attributes that can be used with a ActionMenuItemView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ActionMenuItemView_android_minWidth android:minWidth}</code></td><td></td></tr>
           </table>
           @see #ActionMenuItemView_android_minWidth
         */
        public static final int[] ActionMenuItemView = {
            0x0101013f
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#minWidth}
          attribute's value can be found in the {@link #ActionMenuItemView} array.
          @attr name android:minWidth
        */
        public static int ActionMenuItemView_android_minWidth = 0;
        /** Attributes that can be used with a ActionMenuView.
         */
        public static final int[] ActionMenuView = {
            
        };
        /** Attributes that can be used with a ActionMode.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ActionMode_background me.imid.swipebacklayout.lib:background}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionMode_backgroundSplit me.imid.swipebacklayout.lib:backgroundSplit}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionMode_closeItemLayout me.imid.swipebacklayout.lib:closeItemLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionMode_height me.imid.swipebacklayout.lib:height}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionMode_subtitleTextStyle me.imid.swipebacklayout.lib:subtitleTextStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #ActionMode_titleTextStyle me.imid.swipebacklayout.lib:titleTextStyle}</code></td><td></td></tr>
           </table>
           @see #ActionMode_background
           @see #ActionMode_backgroundSplit
           @see #ActionMode_closeItemLayout
           @see #ActionMode_height
           @see #ActionMode_subtitleTextStyle
           @see #ActionMode_titleTextStyle
         */
        public static final int[] ActionMode = {
            0x7f010002, 0x7f010008, 0x7f010009, 0x7f01000d,
            0x7f01000f, 0x7f01001d
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#background}
          attribute's value can be found in the {@link #ActionMode} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:background
        */
        public static int ActionMode_background = 3;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#backgroundSplit}
          attribute's value can be found in the {@link #ActionMode} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:backgroundSplit
        */
        public static int ActionMode_backgroundSplit = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#closeItemLayout}
          attribute's value can be found in the {@link #ActionMode} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:closeItemLayout
        */
        public static int ActionMode_closeItemLayout = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#height}
          attribute's value can be found in the {@link #ActionMode} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:height
        */
        public static int ActionMode_height = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#subtitleTextStyle}
          attribute's value can be found in the {@link #ActionMode} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:subtitleTextStyle
        */
        public static int ActionMode_subtitleTextStyle = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleTextStyle}
          attribute's value can be found in the {@link #ActionMode} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:titleTextStyle
        */
        public static int ActionMode_titleTextStyle = 1;
        /** Attributes that can be used with a ActivityChooserView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ActivityChooserView_expandActivityOverflowButtonDrawable me.imid.swipebacklayout.lib:expandActivityOverflowButtonDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #ActivityChooserView_initialActivityCount me.imid.swipebacklayout.lib:initialActivityCount}</code></td><td></td></tr>
           </table>
           @see #ActivityChooserView_expandActivityOverflowButtonDrawable
           @see #ActivityChooserView_initialActivityCount
         */
        public static final int[] ActivityChooserView = {
            0x7f01001e, 0x7f01001f
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#expandActivityOverflowButtonDrawable}
          attribute's value can be found in the {@link #ActivityChooserView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:expandActivityOverflowButtonDrawable
        */
        public static int ActivityChooserView_expandActivityOverflowButtonDrawable = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#initialActivityCount}
          attribute's value can be found in the {@link #ActivityChooserView} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:initialActivityCount
        */
        public static int ActivityChooserView_initialActivityCount = 0;
        /** Attributes that can be used with a AlertDialog.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #AlertDialog_android_layout android:layout}</code></td><td></td></tr>
           <tr><td><code>{@link #AlertDialog_buttonPanelSideLayout me.imid.swipebacklayout.lib:buttonPanelSideLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #AlertDialog_listItemLayout me.imid.swipebacklayout.lib:listItemLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #AlertDialog_listLayout me.imid.swipebacklayout.lib:listLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #AlertDialog_multiChoiceItemLayout me.imid.swipebacklayout.lib:multiChoiceItemLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #AlertDialog_singleChoiceItemLayout me.imid.swipebacklayout.lib:singleChoiceItemLayout}</code></td><td></td></tr>
           </table>
           @see #AlertDialog_android_layout
           @see #AlertDialog_buttonPanelSideLayout
           @see #AlertDialog_listItemLayout
           @see #AlertDialog_listLayout
           @see #AlertDialog_multiChoiceItemLayout
           @see #AlertDialog_singleChoiceItemLayout
         */
        public static final int[] AlertDialog = {
            0x010100f2, 0x7f010020, 0x7f010021, 0x7f010022,
            0x7f010023, 0x7f010024
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout}
          attribute's value can be found in the {@link #AlertDialog} array.
          @attr name android:layout
        */
        public static int AlertDialog_android_layout = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonPanelSideLayout}
          attribute's value can be found in the {@link #AlertDialog} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonPanelSideLayout
        */
        public static int AlertDialog_buttonPanelSideLayout = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listItemLayout}
          attribute's value can be found in the {@link #AlertDialog} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:listItemLayout
        */
        public static int AlertDialog_listItemLayout = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listLayout}
          attribute's value can be found in the {@link #AlertDialog} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:listLayout
        */
        public static int AlertDialog_listLayout = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#multiChoiceItemLayout}
          attribute's value can be found in the {@link #AlertDialog} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:multiChoiceItemLayout
        */
        public static int AlertDialog_multiChoiceItemLayout = 3;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#singleChoiceItemLayout}
          attribute's value can be found in the {@link #AlertDialog} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:singleChoiceItemLayout
        */
        public static int AlertDialog_singleChoiceItemLayout = 4;
        /** Attributes that can be used with a AppCompatImageView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #AppCompatImageView_android_src android:src}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatImageView_srcCompat me.imid.swipebacklayout.lib:srcCompat}</code></td><td></td></tr>
           </table>
           @see #AppCompatImageView_android_src
           @see #AppCompatImageView_srcCompat
         */
        public static final int[] AppCompatImageView = {
            0x01010119, 0x7f010025
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#src}
          attribute's value can be found in the {@link #AppCompatImageView} array.
          @attr name android:src
        */
        public static int AppCompatImageView_android_src = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#srcCompat}
          attribute's value can be found in the {@link #AppCompatImageView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:srcCompat
        */
        public static int AppCompatImageView_srcCompat = 1;
        /** Attributes that can be used with a AppCompatTextView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #AppCompatTextView_android_textAppearance android:textAppearance}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTextView_textAllCaps me.imid.swipebacklayout.lib:textAllCaps}</code></td><td></td></tr>
           </table>
           @see #AppCompatTextView_android_textAppearance
           @see #AppCompatTextView_textAllCaps
         */
        public static final int[] AppCompatTextView = {
            0x01010034, 0x7f010026
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#textAppearance}
          attribute's value can be found in the {@link #AppCompatTextView} array.
          @attr name android:textAppearance
        */
        public static int AppCompatTextView_android_textAppearance = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAllCaps}
          attribute's value can be found in the {@link #AppCompatTextView} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a boolean value, either "<code>true</code>" or "<code>false</code>".
          @attr name me.imid.swipebacklayout.lib:textAllCaps
        */
        public static int AppCompatTextView_textAllCaps = 1;
        /** Attributes that can be used with a AppCompatTheme.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarDivider me.imid.swipebacklayout.lib:actionBarDivider}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarItemBackground me.imid.swipebacklayout.lib:actionBarItemBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarPopupTheme me.imid.swipebacklayout.lib:actionBarPopupTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarSize me.imid.swipebacklayout.lib:actionBarSize}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarSplitStyle me.imid.swipebacklayout.lib:actionBarSplitStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarStyle me.imid.swipebacklayout.lib:actionBarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarTabBarStyle me.imid.swipebacklayout.lib:actionBarTabBarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarTabStyle me.imid.swipebacklayout.lib:actionBarTabStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarTabTextStyle me.imid.swipebacklayout.lib:actionBarTabTextStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarTheme me.imid.swipebacklayout.lib:actionBarTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionBarWidgetTheme me.imid.swipebacklayout.lib:actionBarWidgetTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionButtonStyle me.imid.swipebacklayout.lib:actionButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionDropDownStyle me.imid.swipebacklayout.lib:actionDropDownStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionMenuTextAppearance me.imid.swipebacklayout.lib:actionMenuTextAppearance}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionMenuTextColor me.imid.swipebacklayout.lib:actionMenuTextColor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeBackground me.imid.swipebacklayout.lib:actionModeBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeCloseButtonStyle me.imid.swipebacklayout.lib:actionModeCloseButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeCloseDrawable me.imid.swipebacklayout.lib:actionModeCloseDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeCopyDrawable me.imid.swipebacklayout.lib:actionModeCopyDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeCutDrawable me.imid.swipebacklayout.lib:actionModeCutDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeFindDrawable me.imid.swipebacklayout.lib:actionModeFindDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModePasteDrawable me.imid.swipebacklayout.lib:actionModePasteDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModePopupWindowStyle me.imid.swipebacklayout.lib:actionModePopupWindowStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeSelectAllDrawable me.imid.swipebacklayout.lib:actionModeSelectAllDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeShareDrawable me.imid.swipebacklayout.lib:actionModeShareDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeSplitBackground me.imid.swipebacklayout.lib:actionModeSplitBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeStyle me.imid.swipebacklayout.lib:actionModeStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionModeWebSearchDrawable me.imid.swipebacklayout.lib:actionModeWebSearchDrawable}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionOverflowButtonStyle me.imid.swipebacklayout.lib:actionOverflowButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_actionOverflowMenuStyle me.imid.swipebacklayout.lib:actionOverflowMenuStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_activityChooserViewStyle me.imid.swipebacklayout.lib:activityChooserViewStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_alertDialogButtonGroupStyle me.imid.swipebacklayout.lib:alertDialogButtonGroupStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_alertDialogCenterButtons me.imid.swipebacklayout.lib:alertDialogCenterButtons}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_alertDialogStyle me.imid.swipebacklayout.lib:alertDialogStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_alertDialogTheme me.imid.swipebacklayout.lib:alertDialogTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_android_windowAnimationStyle android:windowAnimationStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_android_windowIsFloating android:windowIsFloating}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_autoCompleteTextViewStyle me.imid.swipebacklayout.lib:autoCompleteTextViewStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_borderlessButtonStyle me.imid.swipebacklayout.lib:borderlessButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonBarButtonStyle me.imid.swipebacklayout.lib:buttonBarButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonBarNegativeButtonStyle me.imid.swipebacklayout.lib:buttonBarNegativeButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonBarNeutralButtonStyle me.imid.swipebacklayout.lib:buttonBarNeutralButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonBarPositiveButtonStyle me.imid.swipebacklayout.lib:buttonBarPositiveButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonBarStyle me.imid.swipebacklayout.lib:buttonBarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonStyle me.imid.swipebacklayout.lib:buttonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_buttonStyleSmall me.imid.swipebacklayout.lib:buttonStyleSmall}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_checkboxStyle me.imid.swipebacklayout.lib:checkboxStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_checkedTextViewStyle me.imid.swipebacklayout.lib:checkedTextViewStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorAccent me.imid.swipebacklayout.lib:colorAccent}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorButtonNormal me.imid.swipebacklayout.lib:colorButtonNormal}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorControlActivated me.imid.swipebacklayout.lib:colorControlActivated}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorControlHighlight me.imid.swipebacklayout.lib:colorControlHighlight}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorControlNormal me.imid.swipebacklayout.lib:colorControlNormal}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorPrimary me.imid.swipebacklayout.lib:colorPrimary}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorPrimaryDark me.imid.swipebacklayout.lib:colorPrimaryDark}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_colorSwitchThumbNormal me.imid.swipebacklayout.lib:colorSwitchThumbNormal}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_controlBackground me.imid.swipebacklayout.lib:controlBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_dialogPreferredPadding me.imid.swipebacklayout.lib:dialogPreferredPadding}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_dialogTheme me.imid.swipebacklayout.lib:dialogTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_dividerHorizontal me.imid.swipebacklayout.lib:dividerHorizontal}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_dividerVertical me.imid.swipebacklayout.lib:dividerVertical}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_dropDownListViewStyle me.imid.swipebacklayout.lib:dropDownListViewStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_dropdownListPreferredItemHeight me.imid.swipebacklayout.lib:dropdownListPreferredItemHeight}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_editTextBackground me.imid.swipebacklayout.lib:editTextBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_editTextColor me.imid.swipebacklayout.lib:editTextColor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_editTextStyle me.imid.swipebacklayout.lib:editTextStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_homeAsUpIndicator me.imid.swipebacklayout.lib:homeAsUpIndicator}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_imageButtonStyle me.imid.swipebacklayout.lib:imageButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listChoiceBackgroundIndicator me.imid.swipebacklayout.lib:listChoiceBackgroundIndicator}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listDividerAlertDialog me.imid.swipebacklayout.lib:listDividerAlertDialog}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listPopupWindowStyle me.imid.swipebacklayout.lib:listPopupWindowStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listPreferredItemHeight me.imid.swipebacklayout.lib:listPreferredItemHeight}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listPreferredItemHeightLarge me.imid.swipebacklayout.lib:listPreferredItemHeightLarge}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listPreferredItemHeightSmall me.imid.swipebacklayout.lib:listPreferredItemHeightSmall}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listPreferredItemPaddingLeft me.imid.swipebacklayout.lib:listPreferredItemPaddingLeft}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_listPreferredItemPaddingRight me.imid.swipebacklayout.lib:listPreferredItemPaddingRight}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_panelBackground me.imid.swipebacklayout.lib:panelBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_panelMenuListTheme me.imid.swipebacklayout.lib:panelMenuListTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_panelMenuListWidth me.imid.swipebacklayout.lib:panelMenuListWidth}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_popupMenuStyle me.imid.swipebacklayout.lib:popupMenuStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_popupWindowStyle me.imid.swipebacklayout.lib:popupWindowStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_radioButtonStyle me.imid.swipebacklayout.lib:radioButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_ratingBarStyle me.imid.swipebacklayout.lib:ratingBarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_ratingBarStyleIndicator me.imid.swipebacklayout.lib:ratingBarStyleIndicator}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_ratingBarStyleSmall me.imid.swipebacklayout.lib:ratingBarStyleSmall}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_searchViewStyle me.imid.swipebacklayout.lib:searchViewStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_seekBarStyle me.imid.swipebacklayout.lib:seekBarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_selectableItemBackground me.imid.swipebacklayout.lib:selectableItemBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_selectableItemBackgroundBorderless me.imid.swipebacklayout.lib:selectableItemBackgroundBorderless}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_spinnerDropDownItemStyle me.imid.swipebacklayout.lib:spinnerDropDownItemStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_spinnerStyle me.imid.swipebacklayout.lib:spinnerStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_switchStyle me.imid.swipebacklayout.lib:switchStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textAppearanceLargePopupMenu me.imid.swipebacklayout.lib:textAppearanceLargePopupMenu}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textAppearanceListItem me.imid.swipebacklayout.lib:textAppearanceListItem}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textAppearanceListItemSmall me.imid.swipebacklayout.lib:textAppearanceListItemSmall}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textAppearanceSearchResultSubtitle me.imid.swipebacklayout.lib:textAppearanceSearchResultSubtitle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textAppearanceSearchResultTitle me.imid.swipebacklayout.lib:textAppearanceSearchResultTitle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textAppearanceSmallPopupMenu me.imid.swipebacklayout.lib:textAppearanceSmallPopupMenu}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textColorAlertDialogListItem me.imid.swipebacklayout.lib:textColorAlertDialogListItem}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_textColorSearchUrl me.imid.swipebacklayout.lib:textColorSearchUrl}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_toolbarNavigationButtonStyle me.imid.swipebacklayout.lib:toolbarNavigationButtonStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_toolbarStyle me.imid.swipebacklayout.lib:toolbarStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowActionBar me.imid.swipebacklayout.lib:windowActionBar}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowActionBarOverlay me.imid.swipebacklayout.lib:windowActionBarOverlay}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowActionModeOverlay me.imid.swipebacklayout.lib:windowActionModeOverlay}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowFixedHeightMajor me.imid.swipebacklayout.lib:windowFixedHeightMajor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowFixedHeightMinor me.imid.swipebacklayout.lib:windowFixedHeightMinor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowFixedWidthMajor me.imid.swipebacklayout.lib:windowFixedWidthMajor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowFixedWidthMinor me.imid.swipebacklayout.lib:windowFixedWidthMinor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowMinWidthMajor me.imid.swipebacklayout.lib:windowMinWidthMajor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowMinWidthMinor me.imid.swipebacklayout.lib:windowMinWidthMinor}</code></td><td></td></tr>
           <tr><td><code>{@link #AppCompatTheme_windowNoTitle me.imid.swipebacklayout.lib:windowNoTitle}</code></td><td></td></tr>
           </table>
           @see #AppCompatTheme_actionBarDivider
           @see #AppCompatTheme_actionBarItemBackground
           @see #AppCompatTheme_actionBarPopupTheme
           @see #AppCompatTheme_actionBarSize
           @see #AppCompatTheme_actionBarSplitStyle
           @see #AppCompatTheme_actionBarStyle
           @see #AppCompatTheme_actionBarTabBarStyle
           @see #AppCompatTheme_actionBarTabStyle
           @see #AppCompatTheme_actionBarTabTextStyle
           @see #AppCompatTheme_actionBarTheme
           @see #AppCompatTheme_actionBarWidgetTheme
           @see #AppCompatTheme_actionButtonStyle
           @see #AppCompatTheme_actionDropDownStyle
           @see #AppCompatTheme_actionMenuTextAppearance
           @see #AppCompatTheme_actionMenuTextColor
           @see #AppCompatTheme_actionModeBackground
           @see #AppCompatTheme_actionModeCloseButtonStyle
           @see #AppCompatTheme_actionModeCloseDrawable
           @see #AppCompatTheme_actionModeCopyDrawable
           @see #AppCompatTheme_actionModeCutDrawable
           @see #AppCompatTheme_actionModeFindDrawable
           @see #AppCompatTheme_actionModePasteDrawable
           @see #AppCompatTheme_actionModePopupWindowStyle
           @see #AppCompatTheme_actionModeSelectAllDrawable
           @see #AppCompatTheme_actionModeShareDrawable
           @see #AppCompatTheme_actionModeSplitBackground
           @see #AppCompatTheme_actionModeStyle
           @see #AppCompatTheme_actionModeWebSearchDrawable
           @see #AppCompatTheme_actionOverflowButtonStyle
           @see #AppCompatTheme_actionOverflowMenuStyle
           @see #AppCompatTheme_activityChooserViewStyle
           @see #AppCompatTheme_alertDialogButtonGroupStyle
           @see #AppCompatTheme_alertDialogCenterButtons
           @see #AppCompatTheme_alertDialogStyle
           @see #AppCompatTheme_alertDialogTheme
           @see #AppCompatTheme_android_windowAnimationStyle
           @see #AppCompatTheme_android_windowIsFloating
           @see #AppCompatTheme_autoCompleteTextViewStyle
           @see #AppCompatTheme_borderlessButtonStyle
           @see #AppCompatTheme_buttonBarButtonStyle
           @see #AppCompatTheme_buttonBarNegativeButtonStyle
           @see #AppCompatTheme_buttonBarNeutralButtonStyle
           @see #AppCompatTheme_buttonBarPositiveButtonStyle
           @see #AppCompatTheme_buttonBarStyle
           @see #AppCompatTheme_buttonStyle
           @see #AppCompatTheme_buttonStyleSmall
           @see #AppCompatTheme_checkboxStyle
           @see #AppCompatTheme_checkedTextViewStyle
           @see #AppCompatTheme_colorAccent
           @see #AppCompatTheme_colorButtonNormal
           @see #AppCompatTheme_colorControlActivated
           @see #AppCompatTheme_colorControlHighlight
           @see #AppCompatTheme_colorControlNormal
           @see #AppCompatTheme_colorPrimary
           @see #AppCompatTheme_colorPrimaryDark
           @see #AppCompatTheme_colorSwitchThumbNormal
           @see #AppCompatTheme_controlBackground
           @see #AppCompatTheme_dialogPreferredPadding
           @see #AppCompatTheme_dialogTheme
           @see #AppCompatTheme_dividerHorizontal
           @see #AppCompatTheme_dividerVertical
           @see #AppCompatTheme_dropDownListViewStyle
           @see #AppCompatTheme_dropdownListPreferredItemHeight
           @see #AppCompatTheme_editTextBackground
           @see #AppCompatTheme_editTextColor
           @see #AppCompatTheme_editTextStyle
           @see #AppCompatTheme_homeAsUpIndicator
           @see #AppCompatTheme_imageButtonStyle
           @see #AppCompatTheme_listChoiceBackgroundIndicator
           @see #AppCompatTheme_listDividerAlertDialog
           @see #AppCompatTheme_listPopupWindowStyle
           @see #AppCompatTheme_listPreferredItemHeight
           @see #AppCompatTheme_listPreferredItemHeightLarge
           @see #AppCompatTheme_listPreferredItemHeightSmall
           @see #AppCompatTheme_listPreferredItemPaddingLeft
           @see #AppCompatTheme_listPreferredItemPaddingRight
           @see #AppCompatTheme_panelBackground
           @see #AppCompatTheme_panelMenuListTheme
           @see #AppCompatTheme_panelMenuListWidth
           @see #AppCompatTheme_popupMenuStyle
           @see #AppCompatTheme_popupWindowStyle
           @see #AppCompatTheme_radioButtonStyle
           @see #AppCompatTheme_ratingBarStyle
           @see #AppCompatTheme_ratingBarStyleIndicator
           @see #AppCompatTheme_ratingBarStyleSmall
           @see #AppCompatTheme_searchViewStyle
           @see #AppCompatTheme_seekBarStyle
           @see #AppCompatTheme_selectableItemBackground
           @see #AppCompatTheme_selectableItemBackgroundBorderless
           @see #AppCompatTheme_spinnerDropDownItemStyle
           @see #AppCompatTheme_spinnerStyle
           @see #AppCompatTheme_switchStyle
           @see #AppCompatTheme_textAppearanceLargePopupMenu
           @see #AppCompatTheme_textAppearanceListItem
           @see #AppCompatTheme_textAppearanceListItemSmall
           @see #AppCompatTheme_textAppearanceSearchResultSubtitle
           @see #AppCompatTheme_textAppearanceSearchResultTitle
           @see #AppCompatTheme_textAppearanceSmallPopupMenu
           @see #AppCompatTheme_textColorAlertDialogListItem
           @see #AppCompatTheme_textColorSearchUrl
           @see #AppCompatTheme_toolbarNavigationButtonStyle
           @see #AppCompatTheme_toolbarStyle
           @see #AppCompatTheme_windowActionBar
           @see #AppCompatTheme_windowActionBarOverlay
           @see #AppCompatTheme_windowActionModeOverlay
           @see #AppCompatTheme_windowFixedHeightMajor
           @see #AppCompatTheme_windowFixedHeightMinor
           @see #AppCompatTheme_windowFixedWidthMajor
           @see #AppCompatTheme_windowFixedWidthMinor
           @see #AppCompatTheme_windowMinWidthMajor
           @see #AppCompatTheme_windowMinWidthMinor
           @see #AppCompatTheme_windowNoTitle
         */
        public static final int[] AppCompatTheme = {
            0x01010057, 0x010100ae, 0x7f010027, 0x7f010028,
            0x7f010029, 0x7f01002a, 0x7f01002b, 0x7f01002c,
            0x7f01002d, 0x7f01002e, 0x7f01002f, 0x7f010030,
            0x7f010031, 0x7f010032, 0x7f010033, 0x7f010034,
            0x7f010035, 0x7f010036, 0x7f010037, 0x7f010038,
            0x7f010039, 0x7f01003a, 0x7f01003b, 0x7f01003c,
            0x7f01003d, 0x7f01003e, 0x7f01003f, 0x7f010040,
            0x7f010041, 0x7f010042, 0x7f010043, 0x7f010044,
            0x7f010045, 0x7f010046, 0x7f010047, 0x7f010048,
            0x7f010049, 0x7f01004a, 0x7f01004b, 0x7f01004c,
            0x7f01004d, 0x7f01004e, 0x7f01004f, 0x7f010050,
            0x7f010051, 0x7f010052, 0x7f010053, 0x7f010054,
            0x7f010055, 0x7f010056, 0x7f010057, 0x7f010058,
            0x7f010059, 0x7f01005a, 0x7f01005b, 0x7f01005c,
            0x7f01005d, 0x7f01005e, 0x7f01005f, 0x7f010060,
            0x7f010061, 0x7f010062, 0x7f010063, 0x7f010064,
            0x7f010065, 0x7f010066, 0x7f010067, 0x7f010068,
            0x7f010069, 0x7f01006a, 0x7f01006b, 0x7f01006c,
            0x7f01006d, 0x7f01006e, 0x7f01006f, 0x7f010070,
            0x7f010071, 0x7f010072, 0x7f010073, 0x7f010074,
            0x7f010075, 0x7f010076, 0x7f010077, 0x7f010078,
            0x7f010079, 0x7f01007a, 0x7f01007b, 0x7f01007c,
            0x7f01007d, 0x7f01007e, 0x7f01007f, 0x7f010080,
            0x7f010081, 0x7f010082, 0x7f010083, 0x7f010084,
            0x7f010085, 0x7f010086, 0x7f010087, 0x7f010088,
            0x7f010089, 0x7f01008a, 0x7f01008b, 0x7f01008c,
            0x7f01008d, 0x7f01008e, 0x7f01008f, 0x7f010090,
            0x7f010091, 0x7f010092, 0x7f010093, 0x7f010094
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarDivider}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarDivider
        */
        public static int AppCompatTheme_actionBarDivider = 23;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarItemBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarItemBackground
        */
        public static int AppCompatTheme_actionBarItemBackground = 24;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarPopupTheme}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarPopupTheme
        */
        public static int AppCompatTheme_actionBarPopupTheme = 17;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarSize}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
<p>May be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>wrap_content</code></td><td>0</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:actionBarSize
        */
        public static int AppCompatTheme_actionBarSize = 22;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarSplitStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarSplitStyle
        */
        public static int AppCompatTheme_actionBarSplitStyle = 19;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarStyle
        */
        public static int AppCompatTheme_actionBarStyle = 18;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarTabBarStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarTabBarStyle
        */
        public static int AppCompatTheme_actionBarTabBarStyle = 13;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarTabStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarTabStyle
        */
        public static int AppCompatTheme_actionBarTabStyle = 12;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarTabTextStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarTabTextStyle
        */
        public static int AppCompatTheme_actionBarTabTextStyle = 14;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarTheme}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarTheme
        */
        public static int AppCompatTheme_actionBarTheme = 20;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionBarWidgetTheme}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionBarWidgetTheme
        */
        public static int AppCompatTheme_actionBarWidgetTheme = 21;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionButtonStyle
        */
        public static int AppCompatTheme_actionButtonStyle = 49;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionDropDownStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionDropDownStyle
        */
        public static int AppCompatTheme_actionDropDownStyle = 45;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionMenuTextAppearance}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionMenuTextAppearance
        */
        public static int AppCompatTheme_actionMenuTextAppearance = 25;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionMenuTextColor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionMenuTextColor
        */
        public static int AppCompatTheme_actionMenuTextColor = 26;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeBackground
        */
        public static int AppCompatTheme_actionModeBackground = 29;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeCloseButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeCloseButtonStyle
        */
        public static int AppCompatTheme_actionModeCloseButtonStyle = 28;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeCloseDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeCloseDrawable
        */
        public static int AppCompatTheme_actionModeCloseDrawable = 31;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeCopyDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeCopyDrawable
        */
        public static int AppCompatTheme_actionModeCopyDrawable = 33;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeCutDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeCutDrawable
        */
        public static int AppCompatTheme_actionModeCutDrawable = 32;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeFindDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeFindDrawable
        */
        public static int AppCompatTheme_actionModeFindDrawable = 37;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModePasteDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModePasteDrawable
        */
        public static int AppCompatTheme_actionModePasteDrawable = 34;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModePopupWindowStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModePopupWindowStyle
        */
        public static int AppCompatTheme_actionModePopupWindowStyle = 39;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeSelectAllDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeSelectAllDrawable
        */
        public static int AppCompatTheme_actionModeSelectAllDrawable = 35;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeShareDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeShareDrawable
        */
        public static int AppCompatTheme_actionModeShareDrawable = 36;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeSplitBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeSplitBackground
        */
        public static int AppCompatTheme_actionModeSplitBackground = 30;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeStyle
        */
        public static int AppCompatTheme_actionModeStyle = 27;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionModeWebSearchDrawable}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionModeWebSearchDrawable
        */
        public static int AppCompatTheme_actionModeWebSearchDrawable = 38;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionOverflowButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionOverflowButtonStyle
        */
        public static int AppCompatTheme_actionOverflowButtonStyle = 15;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionOverflowMenuStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionOverflowMenuStyle
        */
        public static int AppCompatTheme_actionOverflowMenuStyle = 16;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#activityChooserViewStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:activityChooserViewStyle
        */
        public static int AppCompatTheme_activityChooserViewStyle = 57;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#alertDialogButtonGroupStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:alertDialogButtonGroupStyle
        */
        public static int AppCompatTheme_alertDialogButtonGroupStyle = 92;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#alertDialogCenterButtons}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:alertDialogCenterButtons
        */
        public static int AppCompatTheme_alertDialogCenterButtons = 93;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#alertDialogStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:alertDialogStyle
        */
        public static int AppCompatTheme_alertDialogStyle = 91;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#alertDialogTheme}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:alertDialogTheme
        */
        public static int AppCompatTheme_alertDialogTheme = 94;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#windowAnimationStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.
          @attr name android:windowAnimationStyle
        */
        public static int AppCompatTheme_android_windowAnimationStyle = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#windowIsFloating}
          attribute's value can be found in the {@link #AppCompatTheme} array.
          @attr name android:windowIsFloating
        */
        public static int AppCompatTheme_android_windowIsFloating = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#autoCompleteTextViewStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:autoCompleteTextViewStyle
        */
        public static int AppCompatTheme_autoCompleteTextViewStyle = 99;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#borderlessButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:borderlessButtonStyle
        */
        public static int AppCompatTheme_borderlessButtonStyle = 54;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonBarButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonBarButtonStyle
        */
        public static int AppCompatTheme_buttonBarButtonStyle = 51;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonBarNegativeButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonBarNegativeButtonStyle
        */
        public static int AppCompatTheme_buttonBarNegativeButtonStyle = 97;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonBarNeutralButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonBarNeutralButtonStyle
        */
        public static int AppCompatTheme_buttonBarNeutralButtonStyle = 98;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonBarPositiveButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonBarPositiveButtonStyle
        */
        public static int AppCompatTheme_buttonBarPositiveButtonStyle = 96;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonBarStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonBarStyle
        */
        public static int AppCompatTheme_buttonBarStyle = 50;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonStyle
        */
        public static int AppCompatTheme_buttonStyle = 100;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonStyleSmall}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:buttonStyleSmall
        */
        public static int AppCompatTheme_buttonStyleSmall = 101;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#checkboxStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:checkboxStyle
        */
        public static int AppCompatTheme_checkboxStyle = 102;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#checkedTextViewStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:checkedTextViewStyle
        */
        public static int AppCompatTheme_checkedTextViewStyle = 103;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorAccent}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorAccent
        */
        public static int AppCompatTheme_colorAccent = 84;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorButtonNormal}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorButtonNormal
        */
        public static int AppCompatTheme_colorButtonNormal = 88;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorControlActivated}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorControlActivated
        */
        public static int AppCompatTheme_colorControlActivated = 86;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorControlHighlight}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorControlHighlight
        */
        public static int AppCompatTheme_colorControlHighlight = 87;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorControlNormal}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorControlNormal
        */
        public static int AppCompatTheme_colorControlNormal = 85;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorPrimary}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorPrimary
        */
        public static int AppCompatTheme_colorPrimary = 82;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorPrimaryDark}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorPrimaryDark
        */
        public static int AppCompatTheme_colorPrimaryDark = 83;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#colorSwitchThumbNormal}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:colorSwitchThumbNormal
        */
        public static int AppCompatTheme_colorSwitchThumbNormal = 89;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#controlBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:controlBackground
        */
        public static int AppCompatTheme_controlBackground = 90;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dialogPreferredPadding}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:dialogPreferredPadding
        */
        public static int AppCompatTheme_dialogPreferredPadding = 43;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dialogTheme}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:dialogTheme
        */
        public static int AppCompatTheme_dialogTheme = 42;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dividerHorizontal}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:dividerHorizontal
        */
        public static int AppCompatTheme_dividerHorizontal = 56;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dividerVertical}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:dividerVertical
        */
        public static int AppCompatTheme_dividerVertical = 55;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dropDownListViewStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:dropDownListViewStyle
        */
        public static int AppCompatTheme_dropDownListViewStyle = 74;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dropdownListPreferredItemHeight}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:dropdownListPreferredItemHeight
        */
        public static int AppCompatTheme_dropdownListPreferredItemHeight = 46;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#editTextBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:editTextBackground
        */
        public static int AppCompatTheme_editTextBackground = 63;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#editTextColor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:editTextColor
        */
        public static int AppCompatTheme_editTextColor = 62;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#editTextStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:editTextStyle
        */
        public static int AppCompatTheme_editTextStyle = 104;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#homeAsUpIndicator}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:homeAsUpIndicator
        */
        public static int AppCompatTheme_homeAsUpIndicator = 48;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#imageButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:imageButtonStyle
        */
        public static int AppCompatTheme_imageButtonStyle = 64;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listChoiceBackgroundIndicator}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:listChoiceBackgroundIndicator
        */
        public static int AppCompatTheme_listChoiceBackgroundIndicator = 81;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listDividerAlertDialog}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:listDividerAlertDialog
        */
        public static int AppCompatTheme_listDividerAlertDialog = 44;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listPopupWindowStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:listPopupWindowStyle
        */
        public static int AppCompatTheme_listPopupWindowStyle = 75;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listPreferredItemHeight}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:listPreferredItemHeight
        */
        public static int AppCompatTheme_listPreferredItemHeight = 69;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listPreferredItemHeightLarge}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:listPreferredItemHeightLarge
        */
        public static int AppCompatTheme_listPreferredItemHeightLarge = 71;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listPreferredItemHeightSmall}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:listPreferredItemHeightSmall
        */
        public static int AppCompatTheme_listPreferredItemHeightSmall = 70;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listPreferredItemPaddingLeft}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:listPreferredItemPaddingLeft
        */
        public static int AppCompatTheme_listPreferredItemPaddingLeft = 72;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#listPreferredItemPaddingRight}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:listPreferredItemPaddingRight
        */
        public static int AppCompatTheme_listPreferredItemPaddingRight = 73;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#panelBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:panelBackground
        */
        public static int AppCompatTheme_panelBackground = 78;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#panelMenuListTheme}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:panelMenuListTheme
        */
        public static int AppCompatTheme_panelMenuListTheme = 80;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#panelMenuListWidth}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:panelMenuListWidth
        */
        public static int AppCompatTheme_panelMenuListWidth = 79;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#popupMenuStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:popupMenuStyle
        */
        public static int AppCompatTheme_popupMenuStyle = 60;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#popupWindowStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:popupWindowStyle
        */
        public static int AppCompatTheme_popupWindowStyle = 61;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#radioButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:radioButtonStyle
        */
        public static int AppCompatTheme_radioButtonStyle = 105;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#ratingBarStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:ratingBarStyle
        */
        public static int AppCompatTheme_ratingBarStyle = 106;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#ratingBarStyleIndicator}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:ratingBarStyleIndicator
        */
        public static int AppCompatTheme_ratingBarStyleIndicator = 107;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#ratingBarStyleSmall}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:ratingBarStyleSmall
        */
        public static int AppCompatTheme_ratingBarStyleSmall = 108;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#searchViewStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:searchViewStyle
        */
        public static int AppCompatTheme_searchViewStyle = 68;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#seekBarStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:seekBarStyle
        */
        public static int AppCompatTheme_seekBarStyle = 109;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#selectableItemBackground}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:selectableItemBackground
        */
        public static int AppCompatTheme_selectableItemBackground = 52;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#selectableItemBackgroundBorderless}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:selectableItemBackgroundBorderless
        */
        public static int AppCompatTheme_selectableItemBackgroundBorderless = 53;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#spinnerDropDownItemStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:spinnerDropDownItemStyle
        */
        public static int AppCompatTheme_spinnerDropDownItemStyle = 47;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#spinnerStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:spinnerStyle
        */
        public static int AppCompatTheme_spinnerStyle = 110;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#switchStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:switchStyle
        */
        public static int AppCompatTheme_switchStyle = 111;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAppearanceLargePopupMenu}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:textAppearanceLargePopupMenu
        */
        public static int AppCompatTheme_textAppearanceLargePopupMenu = 40;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAppearanceListItem}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:textAppearanceListItem
        */
        public static int AppCompatTheme_textAppearanceListItem = 76;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAppearanceListItemSmall}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:textAppearanceListItemSmall
        */
        public static int AppCompatTheme_textAppearanceListItemSmall = 77;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAppearanceSearchResultSubtitle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:textAppearanceSearchResultSubtitle
        */
        public static int AppCompatTheme_textAppearanceSearchResultSubtitle = 66;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAppearanceSearchResultTitle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:textAppearanceSearchResultTitle
        */
        public static int AppCompatTheme_textAppearanceSearchResultTitle = 65;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAppearanceSmallPopupMenu}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:textAppearanceSmallPopupMenu
        */
        public static int AppCompatTheme_textAppearanceSmallPopupMenu = 41;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textColorAlertDialogListItem}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:textColorAlertDialogListItem
        */
        public static int AppCompatTheme_textColorAlertDialogListItem = 95;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textColorSearchUrl}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
          @attr name me.imid.swipebacklayout.lib:textColorSearchUrl
        */
        public static int AppCompatTheme_textColorSearchUrl = 67;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#toolbarNavigationButtonStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:toolbarNavigationButtonStyle
        */
        public static int AppCompatTheme_toolbarNavigationButtonStyle = 59;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#toolbarStyle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:toolbarStyle
        */
        public static int AppCompatTheme_toolbarStyle = 58;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowActionBar}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowActionBar
        */
        public static int AppCompatTheme_windowActionBar = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowActionBarOverlay}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowActionBarOverlay
        */
        public static int AppCompatTheme_windowActionBarOverlay = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowActionModeOverlay}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowActionModeOverlay
        */
        public static int AppCompatTheme_windowActionModeOverlay = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowFixedHeightMajor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowFixedHeightMajor
        */
        public static int AppCompatTheme_windowFixedHeightMajor = 9;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowFixedHeightMinor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowFixedHeightMinor
        */
        public static int AppCompatTheme_windowFixedHeightMinor = 7;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowFixedWidthMajor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowFixedWidthMajor
        */
        public static int AppCompatTheme_windowFixedWidthMajor = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowFixedWidthMinor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowFixedWidthMinor
        */
        public static int AppCompatTheme_windowFixedWidthMinor = 8;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowMinWidthMajor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowMinWidthMajor
        */
        public static int AppCompatTheme_windowMinWidthMajor = 10;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowMinWidthMinor}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>May be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>May be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowMinWidthMinor
        */
        public static int AppCompatTheme_windowMinWidthMinor = 11;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#windowNoTitle}
          attribute's value can be found in the {@link #AppCompatTheme} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:windowNoTitle
        */
        public static int AppCompatTheme_windowNoTitle = 3;
        /** Attributes that can be used with a ButtonBarLayout.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ButtonBarLayout_allowStacking me.imid.swipebacklayout.lib:allowStacking}</code></td><td></td></tr>
           </table>
           @see #ButtonBarLayout_allowStacking
         */
        public static final int[] ButtonBarLayout = {
            0x7f010095
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#allowStacking}
          attribute's value can be found in the {@link #ButtonBarLayout} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:allowStacking
        */
        public static int ButtonBarLayout_allowStacking = 0;
        /** Attributes that can be used with a CompoundButton.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #CompoundButton_android_button android:button}</code></td><td></td></tr>
           <tr><td><code>{@link #CompoundButton_buttonTint me.imid.swipebacklayout.lib:buttonTint}</code></td><td></td></tr>
           <tr><td><code>{@link #CompoundButton_buttonTintMode me.imid.swipebacklayout.lib:buttonTintMode}</code></td><td></td></tr>
           </table>
           @see #CompoundButton_android_button
           @see #CompoundButton_buttonTint
           @see #CompoundButton_buttonTintMode
         */
        public static final int[] CompoundButton = {
            0x01010107, 0x7f010096, 0x7f010097
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#button}
          attribute's value can be found in the {@link #CompoundButton} array.
          @attr name android:button
        */
        public static int CompoundButton_android_button = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonTint}
          attribute's value can be found in the {@link #CompoundButton} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:buttonTint
        */
        public static int CompoundButton_buttonTint = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#buttonTintMode}
          attribute's value can be found in the {@link #CompoundButton} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>src_over</code></td><td>3</td><td></td></tr>
<tr><td><code>src_in</code></td><td>5</td><td></td></tr>
<tr><td><code>src_atop</code></td><td>9</td><td></td></tr>
<tr><td><code>multiply</code></td><td>14</td><td></td></tr>
<tr><td><code>screen</code></td><td>15</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:buttonTintMode
        */
        public static int CompoundButton_buttonTintMode = 2;
        /** Attributes that can be used with a DrawerArrowToggle.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #DrawerArrowToggle_arrowHeadLength me.imid.swipebacklayout.lib:arrowHeadLength}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_arrowShaftLength me.imid.swipebacklayout.lib:arrowShaftLength}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_barLength me.imid.swipebacklayout.lib:barLength}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_color me.imid.swipebacklayout.lib:color}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_drawableSize me.imid.swipebacklayout.lib:drawableSize}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_gapBetweenBars me.imid.swipebacklayout.lib:gapBetweenBars}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_spinBars me.imid.swipebacklayout.lib:spinBars}</code></td><td></td></tr>
           <tr><td><code>{@link #DrawerArrowToggle_thickness me.imid.swipebacklayout.lib:thickness}</code></td><td></td></tr>
           </table>
           @see #DrawerArrowToggle_arrowHeadLength
           @see #DrawerArrowToggle_arrowShaftLength
           @see #DrawerArrowToggle_barLength
           @see #DrawerArrowToggle_color
           @see #DrawerArrowToggle_drawableSize
           @see #DrawerArrowToggle_gapBetweenBars
           @see #DrawerArrowToggle_spinBars
           @see #DrawerArrowToggle_thickness
         */
        public static final int[] DrawerArrowToggle = {
            0x7f010098, 0x7f010099, 0x7f01009a, 0x7f01009b,
            0x7f01009c, 0x7f01009d, 0x7f01009e, 0x7f01009f
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#arrowHeadLength}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:arrowHeadLength
        */
        public static int DrawerArrowToggle_arrowHeadLength = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#arrowShaftLength}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:arrowShaftLength
        */
        public static int DrawerArrowToggle_arrowShaftLength = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#barLength}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:barLength
        */
        public static int DrawerArrowToggle_barLength = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#color}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:color
        */
        public static int DrawerArrowToggle_color = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#drawableSize}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:drawableSize
        */
        public static int DrawerArrowToggle_drawableSize = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#gapBetweenBars}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:gapBetweenBars
        */
        public static int DrawerArrowToggle_gapBetweenBars = 3;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#spinBars}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:spinBars
        */
        public static int DrawerArrowToggle_spinBars = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#thickness}
          attribute's value can be found in the {@link #DrawerArrowToggle} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:thickness
        */
        public static int DrawerArrowToggle_thickness = 7;
        /** Attributes that can be used with a LinearLayoutCompat.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #LinearLayoutCompat_android_baselineAligned android:baselineAligned}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_android_baselineAlignedChildIndex android:baselineAlignedChildIndex}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_android_gravity android:gravity}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_android_orientation android:orientation}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_android_weightSum android:weightSum}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_divider me.imid.swipebacklayout.lib:divider}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_dividerPadding me.imid.swipebacklayout.lib:dividerPadding}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_measureWithLargestChild me.imid.swipebacklayout.lib:measureWithLargestChild}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_showDividers me.imid.swipebacklayout.lib:showDividers}</code></td><td></td></tr>
           </table>
           @see #LinearLayoutCompat_android_baselineAligned
           @see #LinearLayoutCompat_android_baselineAlignedChildIndex
           @see #LinearLayoutCompat_android_gravity
           @see #LinearLayoutCompat_android_orientation
           @see #LinearLayoutCompat_android_weightSum
           @see #LinearLayoutCompat_divider
           @see #LinearLayoutCompat_dividerPadding
           @see #LinearLayoutCompat_measureWithLargestChild
           @see #LinearLayoutCompat_showDividers
         */
        public static final int[] LinearLayoutCompat = {
            0x010100af, 0x010100c4, 0x01010126, 0x01010127,
            0x01010128, 0x7f01000c, 0x7f0100a0, 0x7f0100a1,
            0x7f0100a2
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#baselineAligned}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.
          @attr name android:baselineAligned
        */
        public static int LinearLayoutCompat_android_baselineAligned = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#baselineAlignedChildIndex}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.
          @attr name android:baselineAlignedChildIndex
        */
        public static int LinearLayoutCompat_android_baselineAlignedChildIndex = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#gravity}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.
          @attr name android:gravity
        */
        public static int LinearLayoutCompat_android_gravity = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#orientation}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.
          @attr name android:orientation
        */
        public static int LinearLayoutCompat_android_orientation = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#weightSum}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.
          @attr name android:weightSum
        */
        public static int LinearLayoutCompat_android_weightSum = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#divider}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:divider
        */
        public static int LinearLayoutCompat_divider = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#dividerPadding}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:dividerPadding
        */
        public static int LinearLayoutCompat_dividerPadding = 8;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#measureWithLargestChild}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:measureWithLargestChild
        */
        public static int LinearLayoutCompat_measureWithLargestChild = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#showDividers}
          attribute's value can be found in the {@link #LinearLayoutCompat} array.


          <p>Must be one or more (separated by '|') of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>none</code></td><td>0</td><td></td></tr>
<tr><td><code>beginning</code></td><td>1</td><td></td></tr>
<tr><td><code>middle</code></td><td>2</td><td></td></tr>
<tr><td><code>end</code></td><td>4</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:showDividers
        */
        public static int LinearLayoutCompat_showDividers = 7;
        /** Attributes that can be used with a LinearLayoutCompat_Layout.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #LinearLayoutCompat_Layout_android_layout_gravity android:layout_gravity}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_Layout_android_layout_height android:layout_height}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_Layout_android_layout_weight android:layout_weight}</code></td><td></td></tr>
           <tr><td><code>{@link #LinearLayoutCompat_Layout_android_layout_width android:layout_width}</code></td><td></td></tr>
           </table>
           @see #LinearLayoutCompat_Layout_android_layout_gravity
           @see #LinearLayoutCompat_Layout_android_layout_height
           @see #LinearLayoutCompat_Layout_android_layout_weight
           @see #LinearLayoutCompat_Layout_android_layout_width
         */
        public static final int[] LinearLayoutCompat_Layout = {
            0x010100b3, 0x010100f4, 0x010100f5, 0x01010181
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout_gravity}
          attribute's value can be found in the {@link #LinearLayoutCompat_Layout} array.
          @attr name android:layout_gravity
        */
        public static int LinearLayoutCompat_Layout_android_layout_gravity = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout_height}
          attribute's value can be found in the {@link #LinearLayoutCompat_Layout} array.
          @attr name android:layout_height
        */
        public static int LinearLayoutCompat_Layout_android_layout_height = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout_weight}
          attribute's value can be found in the {@link #LinearLayoutCompat_Layout} array.
          @attr name android:layout_weight
        */
        public static int LinearLayoutCompat_Layout_android_layout_weight = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout_width}
          attribute's value can be found in the {@link #LinearLayoutCompat_Layout} array.
          @attr name android:layout_width
        */
        public static int LinearLayoutCompat_Layout_android_layout_width = 1;
        /** Attributes that can be used with a ListPopupWindow.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ListPopupWindow_android_dropDownHorizontalOffset android:dropDownHorizontalOffset}</code></td><td></td></tr>
           <tr><td><code>{@link #ListPopupWindow_android_dropDownVerticalOffset android:dropDownVerticalOffset}</code></td><td></td></tr>
           </table>
           @see #ListPopupWindow_android_dropDownHorizontalOffset
           @see #ListPopupWindow_android_dropDownVerticalOffset
         */
        public static final int[] ListPopupWindow = {
            0x010102ac, 0x010102ad
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#dropDownHorizontalOffset}
          attribute's value can be found in the {@link #ListPopupWindow} array.
          @attr name android:dropDownHorizontalOffset
        */
        public static int ListPopupWindow_android_dropDownHorizontalOffset = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#dropDownVerticalOffset}
          attribute's value can be found in the {@link #ListPopupWindow} array.
          @attr name android:dropDownVerticalOffset
        */
        public static int ListPopupWindow_android_dropDownVerticalOffset = 1;
        /** Attributes that can be used with a MenuGroup.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #MenuGroup_android_checkableBehavior android:checkableBehavior}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuGroup_android_enabled android:enabled}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuGroup_android_id android:id}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuGroup_android_menuCategory android:menuCategory}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuGroup_android_orderInCategory android:orderInCategory}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuGroup_android_visible android:visible}</code></td><td></td></tr>
           </table>
           @see #MenuGroup_android_checkableBehavior
           @see #MenuGroup_android_enabled
           @see #MenuGroup_android_id
           @see #MenuGroup_android_menuCategory
           @see #MenuGroup_android_orderInCategory
           @see #MenuGroup_android_visible
         */
        public static final int[] MenuGroup = {
            0x0101000e, 0x010100d0, 0x01010194, 0x010101de,
            0x010101df, 0x010101e0
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#checkableBehavior}
          attribute's value can be found in the {@link #MenuGroup} array.
          @attr name android:checkableBehavior
        */
        public static int MenuGroup_android_checkableBehavior = 5;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#enabled}
          attribute's value can be found in the {@link #MenuGroup} array.
          @attr name android:enabled
        */
        public static int MenuGroup_android_enabled = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#id}
          attribute's value can be found in the {@link #MenuGroup} array.
          @attr name android:id
        */
        public static int MenuGroup_android_id = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#menuCategory}
          attribute's value can be found in the {@link #MenuGroup} array.
          @attr name android:menuCategory
        */
        public static int MenuGroup_android_menuCategory = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#orderInCategory}
          attribute's value can be found in the {@link #MenuGroup} array.
          @attr name android:orderInCategory
        */
        public static int MenuGroup_android_orderInCategory = 4;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#visible}
          attribute's value can be found in the {@link #MenuGroup} array.
          @attr name android:visible
        */
        public static int MenuGroup_android_visible = 2;
        /** Attributes that can be used with a MenuItem.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #MenuItem_actionLayout me.imid.swipebacklayout.lib:actionLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_actionProviderClass me.imid.swipebacklayout.lib:actionProviderClass}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_actionViewClass me.imid.swipebacklayout.lib:actionViewClass}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_alphabeticShortcut android:alphabeticShortcut}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_checkable android:checkable}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_checked android:checked}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_enabled android:enabled}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_icon android:icon}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_id android:id}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_menuCategory android:menuCategory}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_numericShortcut android:numericShortcut}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_onClick android:onClick}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_orderInCategory android:orderInCategory}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_title android:title}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_titleCondensed android:titleCondensed}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_android_visible android:visible}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuItem_showAsAction me.imid.swipebacklayout.lib:showAsAction}</code></td><td></td></tr>
           </table>
           @see #MenuItem_actionLayout
           @see #MenuItem_actionProviderClass
           @see #MenuItem_actionViewClass
           @see #MenuItem_android_alphabeticShortcut
           @see #MenuItem_android_checkable
           @see #MenuItem_android_checked
           @see #MenuItem_android_enabled
           @see #MenuItem_android_icon
           @see #MenuItem_android_id
           @see #MenuItem_android_menuCategory
           @see #MenuItem_android_numericShortcut
           @see #MenuItem_android_onClick
           @see #MenuItem_android_orderInCategory
           @see #MenuItem_android_title
           @see #MenuItem_android_titleCondensed
           @see #MenuItem_android_visible
           @see #MenuItem_showAsAction
         */
        public static final int[] MenuItem = {
            0x01010002, 0x0101000e, 0x010100d0, 0x01010106,
            0x01010194, 0x010101de, 0x010101df, 0x010101e1,
            0x010101e2, 0x010101e3, 0x010101e4, 0x010101e5,
            0x0101026f, 0x7f0100a3, 0x7f0100a4, 0x7f0100a5,
            0x7f0100a6
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionLayout}
          attribute's value can be found in the {@link #MenuItem} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:actionLayout
        */
        public static int MenuItem_actionLayout = 14;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionProviderClass}
          attribute's value can be found in the {@link #MenuItem} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:actionProviderClass
        */
        public static int MenuItem_actionProviderClass = 16;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#actionViewClass}
          attribute's value can be found in the {@link #MenuItem} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:actionViewClass
        */
        public static int MenuItem_actionViewClass = 15;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#alphabeticShortcut}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:alphabeticShortcut
        */
        public static int MenuItem_android_alphabeticShortcut = 9;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#checkable}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:checkable
        */
        public static int MenuItem_android_checkable = 11;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#checked}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:checked
        */
        public static int MenuItem_android_checked = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#enabled}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:enabled
        */
        public static int MenuItem_android_enabled = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#icon}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:icon
        */
        public static int MenuItem_android_icon = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#id}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:id
        */
        public static int MenuItem_android_id = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#menuCategory}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:menuCategory
        */
        public static int MenuItem_android_menuCategory = 5;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#numericShortcut}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:numericShortcut
        */
        public static int MenuItem_android_numericShortcut = 10;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#onClick}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:onClick
        */
        public static int MenuItem_android_onClick = 12;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#orderInCategory}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:orderInCategory
        */
        public static int MenuItem_android_orderInCategory = 6;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#title}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:title
        */
        public static int MenuItem_android_title = 7;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#titleCondensed}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:titleCondensed
        */
        public static int MenuItem_android_titleCondensed = 8;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#visible}
          attribute's value can be found in the {@link #MenuItem} array.
          @attr name android:visible
        */
        public static int MenuItem_android_visible = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#showAsAction}
          attribute's value can be found in the {@link #MenuItem} array.


          <p>Must be one or more (separated by '|') of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>never</code></td><td>0</td><td></td></tr>
<tr><td><code>ifRoom</code></td><td>1</td><td></td></tr>
<tr><td><code>always</code></td><td>2</td><td></td></tr>
<tr><td><code>withText</code></td><td>4</td><td></td></tr>
<tr><td><code>collapseActionView</code></td><td>8</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:showAsAction
        */
        public static int MenuItem_showAsAction = 13;
        /** Attributes that can be used with a MenuView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #MenuView_android_headerBackground android:headerBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_android_horizontalDivider android:horizontalDivider}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_android_itemBackground android:itemBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_android_itemIconDisabledAlpha android:itemIconDisabledAlpha}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_android_itemTextAppearance android:itemTextAppearance}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_android_verticalDivider android:verticalDivider}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_android_windowAnimationStyle android:windowAnimationStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #MenuView_preserveIconSpacing me.imid.swipebacklayout.lib:preserveIconSpacing}</code></td><td></td></tr>
           </table>
           @see #MenuView_android_headerBackground
           @see #MenuView_android_horizontalDivider
           @see #MenuView_android_itemBackground
           @see #MenuView_android_itemIconDisabledAlpha
           @see #MenuView_android_itemTextAppearance
           @see #MenuView_android_verticalDivider
           @see #MenuView_android_windowAnimationStyle
           @see #MenuView_preserveIconSpacing
         */
        public static final int[] MenuView = {
            0x010100ae, 0x0101012c, 0x0101012d, 0x0101012e,
            0x0101012f, 0x01010130, 0x01010131, 0x7f0100a7
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#headerBackground}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:headerBackground
        */
        public static int MenuView_android_headerBackground = 4;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#horizontalDivider}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:horizontalDivider
        */
        public static int MenuView_android_horizontalDivider = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#itemBackground}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:itemBackground
        */
        public static int MenuView_android_itemBackground = 5;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#itemIconDisabledAlpha}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:itemIconDisabledAlpha
        */
        public static int MenuView_android_itemIconDisabledAlpha = 6;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#itemTextAppearance}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:itemTextAppearance
        */
        public static int MenuView_android_itemTextAppearance = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#verticalDivider}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:verticalDivider
        */
        public static int MenuView_android_verticalDivider = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#windowAnimationStyle}
          attribute's value can be found in the {@link #MenuView} array.
          @attr name android:windowAnimationStyle
        */
        public static int MenuView_android_windowAnimationStyle = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#preserveIconSpacing}
          attribute's value can be found in the {@link #MenuView} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:preserveIconSpacing
        */
        public static int MenuView_preserveIconSpacing = 7;
        /** Attributes that can be used with a PopupWindow.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #PopupWindow_android_popupBackground android:popupBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #PopupWindow_overlapAnchor me.imid.swipebacklayout.lib:overlapAnchor}</code></td><td></td></tr>
           </table>
           @see #PopupWindow_android_popupBackground
           @see #PopupWindow_overlapAnchor
         */
        public static final int[] PopupWindow = {
            0x01010176, 0x7f0100a8
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#popupBackground}
          attribute's value can be found in the {@link #PopupWindow} array.
          @attr name android:popupBackground
        */
        public static int PopupWindow_android_popupBackground = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#overlapAnchor}
          attribute's value can be found in the {@link #PopupWindow} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:overlapAnchor
        */
        public static int PopupWindow_overlapAnchor = 1;
        /** Attributes that can be used with a PopupWindowBackgroundState.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #PopupWindowBackgroundState_state_above_anchor me.imid.swipebacklayout.lib:state_above_anchor}</code></td><td></td></tr>
           </table>
           @see #PopupWindowBackgroundState_state_above_anchor
         */
        public static final int[] PopupWindowBackgroundState = {
            0x7f0100a9
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#state_above_anchor}
          attribute's value can be found in the {@link #PopupWindowBackgroundState} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:state_above_anchor
        */
        public static int PopupWindowBackgroundState_state_above_anchor = 0;
        /** Attributes that can be used with a SearchView.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #SearchView_android_focusable android:focusable}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_android_imeOptions android:imeOptions}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_android_inputType android:inputType}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_android_maxWidth android:maxWidth}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_closeIcon me.imid.swipebacklayout.lib:closeIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_commitIcon me.imid.swipebacklayout.lib:commitIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_defaultQueryHint me.imid.swipebacklayout.lib:defaultQueryHint}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_goIcon me.imid.swipebacklayout.lib:goIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_iconifiedByDefault me.imid.swipebacklayout.lib:iconifiedByDefault}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_layout me.imid.swipebacklayout.lib:layout}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_queryBackground me.imid.swipebacklayout.lib:queryBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_queryHint me.imid.swipebacklayout.lib:queryHint}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_searchHintIcon me.imid.swipebacklayout.lib:searchHintIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_searchIcon me.imid.swipebacklayout.lib:searchIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_submitBackground me.imid.swipebacklayout.lib:submitBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_suggestionRowLayout me.imid.swipebacklayout.lib:suggestionRowLayout}</code></td><td></td></tr>
           <tr><td><code>{@link #SearchView_voiceIcon me.imid.swipebacklayout.lib:voiceIcon}</code></td><td></td></tr>
           </table>
           @see #SearchView_android_focusable
           @see #SearchView_android_imeOptions
           @see #SearchView_android_inputType
           @see #SearchView_android_maxWidth
           @see #SearchView_closeIcon
           @see #SearchView_commitIcon
           @see #SearchView_defaultQueryHint
           @see #SearchView_goIcon
           @see #SearchView_iconifiedByDefault
           @see #SearchView_layout
           @see #SearchView_queryBackground
           @see #SearchView_queryHint
           @see #SearchView_searchHintIcon
           @see #SearchView_searchIcon
           @see #SearchView_submitBackground
           @see #SearchView_suggestionRowLayout
           @see #SearchView_voiceIcon
         */
        public static final int[] SearchView = {
            0x010100da, 0x0101011f, 0x01010220, 0x01010264,
            0x7f0100aa, 0x7f0100ab, 0x7f0100ac, 0x7f0100ad,
            0x7f0100ae, 0x7f0100af, 0x7f0100b0, 0x7f0100b1,
            0x7f0100b2, 0x7f0100b3, 0x7f0100b4, 0x7f0100b5,
            0x7f0100b6
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#focusable}
          attribute's value can be found in the {@link #SearchView} array.
          @attr name android:focusable
        */
        public static int SearchView_android_focusable = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#imeOptions}
          attribute's value can be found in the {@link #SearchView} array.
          @attr name android:imeOptions
        */
        public static int SearchView_android_imeOptions = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#inputType}
          attribute's value can be found in the {@link #SearchView} array.
          @attr name android:inputType
        */
        public static int SearchView_android_inputType = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#maxWidth}
          attribute's value can be found in the {@link #SearchView} array.
          @attr name android:maxWidth
        */
        public static int SearchView_android_maxWidth = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#closeIcon}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:closeIcon
        */
        public static int SearchView_closeIcon = 8;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#commitIcon}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:commitIcon
        */
        public static int SearchView_commitIcon = 13;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#defaultQueryHint}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:defaultQueryHint
        */
        public static int SearchView_defaultQueryHint = 7;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#goIcon}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:goIcon
        */
        public static int SearchView_goIcon = 9;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#iconifiedByDefault}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:iconifiedByDefault
        */
        public static int SearchView_iconifiedByDefault = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#layout}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:layout
        */
        public static int SearchView_layout = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#queryBackground}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:queryBackground
        */
        public static int SearchView_queryBackground = 15;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#queryHint}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:queryHint
        */
        public static int SearchView_queryHint = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#searchHintIcon}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:searchHintIcon
        */
        public static int SearchView_searchHintIcon = 11;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#searchIcon}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:searchIcon
        */
        public static int SearchView_searchIcon = 10;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#submitBackground}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:submitBackground
        */
        public static int SearchView_submitBackground = 16;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#suggestionRowLayout}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:suggestionRowLayout
        */
        public static int SearchView_suggestionRowLayout = 14;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#voiceIcon}
          attribute's value can be found in the {@link #SearchView} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:voiceIcon
        */
        public static int SearchView_voiceIcon = 12;
        /** Attributes that can be used with a Spinner.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #Spinner_android_dropDownWidth android:dropDownWidth}</code></td><td></td></tr>
           <tr><td><code>{@link #Spinner_android_entries android:entries}</code></td><td></td></tr>
           <tr><td><code>{@link #Spinner_android_popupBackground android:popupBackground}</code></td><td></td></tr>
           <tr><td><code>{@link #Spinner_android_prompt android:prompt}</code></td><td></td></tr>
           <tr><td><code>{@link #Spinner_popupTheme me.imid.swipebacklayout.lib:popupTheme}</code></td><td></td></tr>
           </table>
           @see #Spinner_android_dropDownWidth
           @see #Spinner_android_entries
           @see #Spinner_android_popupBackground
           @see #Spinner_android_prompt
           @see #Spinner_popupTheme
         */
        public static final int[] Spinner = {
            0x010100b2, 0x01010176, 0x0101017b, 0x01010262,
            0x7f01001c
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#dropDownWidth}
          attribute's value can be found in the {@link #Spinner} array.
          @attr name android:dropDownWidth
        */
        public static int Spinner_android_dropDownWidth = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#entries}
          attribute's value can be found in the {@link #Spinner} array.
          @attr name android:entries
        */
        public static int Spinner_android_entries = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#popupBackground}
          attribute's value can be found in the {@link #Spinner} array.
          @attr name android:popupBackground
        */
        public static int Spinner_android_popupBackground = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#prompt}
          attribute's value can be found in the {@link #Spinner} array.
          @attr name android:prompt
        */
        public static int Spinner_android_prompt = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#popupTheme}
          attribute's value can be found in the {@link #Spinner} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:popupTheme
        */
        public static int Spinner_popupTheme = 4;
        /** Attributes that can be used with a SwipeBackLayout.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #SwipeBackLayout_edge_flag me.imid.swipebacklayout.lib:edge_flag}</code></td><td></td></tr>
           <tr><td><code>{@link #SwipeBackLayout_edge_size me.imid.swipebacklayout.lib:edge_size}</code></td><td></td></tr>
           <tr><td><code>{@link #SwipeBackLayout_shadow_bottom me.imid.swipebacklayout.lib:shadow_bottom}</code></td><td></td></tr>
           <tr><td><code>{@link #SwipeBackLayout_shadow_left me.imid.swipebacklayout.lib:shadow_left}</code></td><td></td></tr>
           <tr><td><code>{@link #SwipeBackLayout_shadow_right me.imid.swipebacklayout.lib:shadow_right}</code></td><td></td></tr>
           </table>
           @see #SwipeBackLayout_edge_flag
           @see #SwipeBackLayout_edge_size
           @see #SwipeBackLayout_shadow_bottom
           @see #SwipeBackLayout_shadow_left
           @see #SwipeBackLayout_shadow_right
         */
        public static final int[] SwipeBackLayout = {
            0x7f0100b7, 0x7f0100b8, 0x7f0100b9, 0x7f0100ba,
            0x7f0100bb
        };
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#edge_flag}
          attribute's value can be found in the {@link #SwipeBackLayout} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>left</code></td><td>0</td><td></td></tr>
<tr><td><code>right</code></td><td>1</td><td></td></tr>
<tr><td><code>bottom</code></td><td>2</td><td></td></tr>
<tr><td><code>all</code></td><td>3</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:edge_flag
        */
        public static int SwipeBackLayout_edge_flag = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#edge_size}
          attribute's value can be found in the {@link #SwipeBackLayout} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:edge_size
        */
        public static int SwipeBackLayout_edge_size = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#shadow_bottom}
          attribute's value can be found in the {@link #SwipeBackLayout} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:shadow_bottom
        */
        public static int SwipeBackLayout_shadow_bottom = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#shadow_left}
          attribute's value can be found in the {@link #SwipeBackLayout} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:shadow_left
        */
        public static int SwipeBackLayout_shadow_left = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#shadow_right}
          attribute's value can be found in the {@link #SwipeBackLayout} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:shadow_right
        */
        public static int SwipeBackLayout_shadow_right = 3;
        /** Attributes that can be used with a SwitchCompat.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #SwitchCompat_android_textOff android:textOff}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_android_textOn android:textOn}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_android_thumb android:thumb}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_showText me.imid.swipebacklayout.lib:showText}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_splitTrack me.imid.swipebacklayout.lib:splitTrack}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_switchMinWidth me.imid.swipebacklayout.lib:switchMinWidth}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_switchPadding me.imid.swipebacklayout.lib:switchPadding}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_switchTextAppearance me.imid.swipebacklayout.lib:switchTextAppearance}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_thumbTextPadding me.imid.swipebacklayout.lib:thumbTextPadding}</code></td><td></td></tr>
           <tr><td><code>{@link #SwitchCompat_track me.imid.swipebacklayout.lib:track}</code></td><td></td></tr>
           </table>
           @see #SwitchCompat_android_textOff
           @see #SwitchCompat_android_textOn
           @see #SwitchCompat_android_thumb
           @see #SwitchCompat_showText
           @see #SwitchCompat_splitTrack
           @see #SwitchCompat_switchMinWidth
           @see #SwitchCompat_switchPadding
           @see #SwitchCompat_switchTextAppearance
           @see #SwitchCompat_thumbTextPadding
           @see #SwitchCompat_track
         */
        public static final int[] SwitchCompat = {
            0x01010124, 0x01010125, 0x01010142, 0x7f0100bc,
            0x7f0100bd, 0x7f0100be, 0x7f0100bf, 0x7f0100c0,
            0x7f0100c1, 0x7f0100c2
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#textOff}
          attribute's value can be found in the {@link #SwitchCompat} array.
          @attr name android:textOff
        */
        public static int SwitchCompat_android_textOff = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#textOn}
          attribute's value can be found in the {@link #SwitchCompat} array.
          @attr name android:textOn
        */
        public static int SwitchCompat_android_textOn = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#thumb}
          attribute's value can be found in the {@link #SwitchCompat} array.
          @attr name android:thumb
        */
        public static int SwitchCompat_android_thumb = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#showText}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:showText
        */
        public static int SwitchCompat_showText = 9;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#splitTrack}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:splitTrack
        */
        public static int SwitchCompat_splitTrack = 8;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#switchMinWidth}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:switchMinWidth
        */
        public static int SwitchCompat_switchMinWidth = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#switchPadding}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:switchPadding
        */
        public static int SwitchCompat_switchPadding = 7;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#switchTextAppearance}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:switchTextAppearance
        */
        public static int SwitchCompat_switchTextAppearance = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#thumbTextPadding}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:thumbTextPadding
        */
        public static int SwitchCompat_thumbTextPadding = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#track}
          attribute's value can be found in the {@link #SwitchCompat} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:track
        */
        public static int SwitchCompat_track = 3;
        /** Attributes that can be used with a TextAppearance.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #TextAppearance_android_shadowColor android:shadowColor}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_shadowDx android:shadowDx}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_shadowDy android:shadowDy}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_shadowRadius android:shadowRadius}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_textColor android:textColor}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_textSize android:textSize}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_textStyle android:textStyle}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_android_typeface android:typeface}</code></td><td></td></tr>
           <tr><td><code>{@link #TextAppearance_textAllCaps me.imid.swipebacklayout.lib:textAllCaps}</code></td><td></td></tr>
           </table>
           @see #TextAppearance_android_shadowColor
           @see #TextAppearance_android_shadowDx
           @see #TextAppearance_android_shadowDy
           @see #TextAppearance_android_shadowRadius
           @see #TextAppearance_android_textColor
           @see #TextAppearance_android_textSize
           @see #TextAppearance_android_textStyle
           @see #TextAppearance_android_typeface
           @see #TextAppearance_textAllCaps
         */
        public static final int[] TextAppearance = {
            0x01010095, 0x01010096, 0x01010097, 0x01010098,
            0x01010161, 0x01010162, 0x01010163, 0x01010164,
            0x7f010026
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#shadowColor}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:shadowColor
        */
        public static int TextAppearance_android_shadowColor = 4;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#shadowDx}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:shadowDx
        */
        public static int TextAppearance_android_shadowDx = 5;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#shadowDy}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:shadowDy
        */
        public static int TextAppearance_android_shadowDy = 6;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#shadowRadius}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:shadowRadius
        */
        public static int TextAppearance_android_shadowRadius = 7;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#textColor}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:textColor
        */
        public static int TextAppearance_android_textColor = 3;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#textSize}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:textSize
        */
        public static int TextAppearance_android_textSize = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#textStyle}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:textStyle
        */
        public static int TextAppearance_android_textStyle = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#typeface}
          attribute's value can be found in the {@link #TextAppearance} array.
          @attr name android:typeface
        */
        public static int TextAppearance_android_typeface = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#textAllCaps}
          attribute's value can be found in the {@link #TextAppearance} array.


          <p>May be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
<p>May be a boolean value, either "<code>true</code>" or "<code>false</code>".
          @attr name me.imid.swipebacklayout.lib:textAllCaps
        */
        public static int TextAppearance_textAllCaps = 8;
        /** Attributes that can be used with a Toolbar.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #Toolbar_android_gravity android:gravity}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_android_minHeight android:minHeight}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_collapseContentDescription me.imid.swipebacklayout.lib:collapseContentDescription}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_collapseIcon me.imid.swipebacklayout.lib:collapseIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_contentInsetEnd me.imid.swipebacklayout.lib:contentInsetEnd}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_contentInsetLeft me.imid.swipebacklayout.lib:contentInsetLeft}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_contentInsetRight me.imid.swipebacklayout.lib:contentInsetRight}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_contentInsetStart me.imid.swipebacklayout.lib:contentInsetStart}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_logo me.imid.swipebacklayout.lib:logo}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_logoDescription me.imid.swipebacklayout.lib:logoDescription}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_maxButtonHeight me.imid.swipebacklayout.lib:maxButtonHeight}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_navigationContentDescription me.imid.swipebacklayout.lib:navigationContentDescription}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_navigationIcon me.imid.swipebacklayout.lib:navigationIcon}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_popupTheme me.imid.swipebacklayout.lib:popupTheme}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_subtitle me.imid.swipebacklayout.lib:subtitle}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_subtitleTextAppearance me.imid.swipebacklayout.lib:subtitleTextAppearance}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_subtitleTextColor me.imid.swipebacklayout.lib:subtitleTextColor}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_title me.imid.swipebacklayout.lib:title}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleMarginBottom me.imid.swipebacklayout.lib:titleMarginBottom}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleMarginEnd me.imid.swipebacklayout.lib:titleMarginEnd}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleMarginStart me.imid.swipebacklayout.lib:titleMarginStart}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleMarginTop me.imid.swipebacklayout.lib:titleMarginTop}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleMargins me.imid.swipebacklayout.lib:titleMargins}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleTextAppearance me.imid.swipebacklayout.lib:titleTextAppearance}</code></td><td></td></tr>
           <tr><td><code>{@link #Toolbar_titleTextColor me.imid.swipebacklayout.lib:titleTextColor}</code></td><td></td></tr>
           </table>
           @see #Toolbar_android_gravity
           @see #Toolbar_android_minHeight
           @see #Toolbar_collapseContentDescription
           @see #Toolbar_collapseIcon
           @see #Toolbar_contentInsetEnd
           @see #Toolbar_contentInsetLeft
           @see #Toolbar_contentInsetRight
           @see #Toolbar_contentInsetStart
           @see #Toolbar_logo
           @see #Toolbar_logoDescription
           @see #Toolbar_maxButtonHeight
           @see #Toolbar_navigationContentDescription
           @see #Toolbar_navigationIcon
           @see #Toolbar_popupTheme
           @see #Toolbar_subtitle
           @see #Toolbar_subtitleTextAppearance
           @see #Toolbar_subtitleTextColor
           @see #Toolbar_title
           @see #Toolbar_titleMarginBottom
           @see #Toolbar_titleMarginEnd
           @see #Toolbar_titleMarginStart
           @see #Toolbar_titleMarginTop
           @see #Toolbar_titleMargins
           @see #Toolbar_titleTextAppearance
           @see #Toolbar_titleTextColor
         */
        public static final int[] Toolbar = {
            0x010100af, 0x01010140, 0x7f010004, 0x7f010007,
            0x7f01000b, 0x7f010017, 0x7f010018, 0x7f010019,
            0x7f01001a, 0x7f01001c, 0x7f0100c3, 0x7f0100c4,
            0x7f0100c5, 0x7f0100c6, 0x7f0100c7, 0x7f0100c8,
            0x7f0100c9, 0x7f0100ca, 0x7f0100cb, 0x7f0100cc,
            0x7f0100cd, 0x7f0100ce, 0x7f0100cf, 0x7f0100d0,
            0x7f0100d1
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#gravity}
          attribute's value can be found in the {@link #Toolbar} array.
          @attr name android:gravity
        */
        public static int Toolbar_android_gravity = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#minHeight}
          attribute's value can be found in the {@link #Toolbar} array.
          @attr name android:minHeight
        */
        public static int Toolbar_android_minHeight = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#collapseContentDescription}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:collapseContentDescription
        */
        public static int Toolbar_collapseContentDescription = 19;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#collapseIcon}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:collapseIcon
        */
        public static int Toolbar_collapseIcon = 18;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetEnd}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetEnd
        */
        public static int Toolbar_contentInsetEnd = 6;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetLeft}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetLeft
        */
        public static int Toolbar_contentInsetLeft = 7;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetRight}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetRight
        */
        public static int Toolbar_contentInsetRight = 8;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#contentInsetStart}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:contentInsetStart
        */
        public static int Toolbar_contentInsetStart = 5;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#logo}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:logo
        */
        public static int Toolbar_logo = 4;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#logoDescription}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:logoDescription
        */
        public static int Toolbar_logoDescription = 22;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#maxButtonHeight}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:maxButtonHeight
        */
        public static int Toolbar_maxButtonHeight = 17;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#navigationContentDescription}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:navigationContentDescription
        */
        public static int Toolbar_navigationContentDescription = 21;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#navigationIcon}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:navigationIcon
        */
        public static int Toolbar_navigationIcon = 20;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#popupTheme}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:popupTheme
        */
        public static int Toolbar_popupTheme = 9;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#subtitle}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:subtitle
        */
        public static int Toolbar_subtitle = 3;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#subtitleTextAppearance}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:subtitleTextAppearance
        */
        public static int Toolbar_subtitleTextAppearance = 11;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#subtitleTextColor}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:subtitleTextColor
        */
        public static int Toolbar_subtitleTextColor = 24;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#title}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:title
        */
        public static int Toolbar_title = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleMarginBottom}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:titleMarginBottom
        */
        public static int Toolbar_titleMarginBottom = 16;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleMarginEnd}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:titleMarginEnd
        */
        public static int Toolbar_titleMarginEnd = 14;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleMarginStart}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:titleMarginStart
        */
        public static int Toolbar_titleMarginStart = 13;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleMarginTop}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:titleMarginTop
        */
        public static int Toolbar_titleMarginTop = 15;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleMargins}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:titleMargins
        */
        public static int Toolbar_titleMargins = 12;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleTextAppearance}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:titleTextAppearance
        */
        public static int Toolbar_titleTextAppearance = 10;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#titleTextColor}
          attribute's value can be found in the {@link #Toolbar} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:titleTextColor
        */
        public static int Toolbar_titleTextColor = 23;
        /** Attributes that can be used with a View.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #View_android_focusable android:focusable}</code></td><td></td></tr>
           <tr><td><code>{@link #View_android_theme android:theme}</code></td><td></td></tr>
           <tr><td><code>{@link #View_paddingEnd me.imid.swipebacklayout.lib:paddingEnd}</code></td><td></td></tr>
           <tr><td><code>{@link #View_paddingStart me.imid.swipebacklayout.lib:paddingStart}</code></td><td></td></tr>
           <tr><td><code>{@link #View_theme me.imid.swipebacklayout.lib:theme}</code></td><td></td></tr>
           </table>
           @see #View_android_focusable
           @see #View_android_theme
           @see #View_paddingEnd
           @see #View_paddingStart
           @see #View_theme
         */
        public static final int[] View = {
            0x01010000, 0x010100da, 0x7f0100d2, 0x7f0100d3,
            0x7f0100d4
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#focusable}
          attribute's value can be found in the {@link #View} array.
          @attr name android:focusable
        */
        public static int View_android_focusable = 1;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#theme}
          attribute's value can be found in the {@link #View} array.
          @attr name android:theme
        */
        public static int View_android_theme = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#paddingEnd}
          attribute's value can be found in the {@link #View} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:paddingEnd
        */
        public static int View_paddingEnd = 3;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#paddingStart}
          attribute's value can be found in the {@link #View} array.


          <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:paddingStart
        */
        public static int View_paddingStart = 2;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#theme}
          attribute's value can be found in the {@link #View} array.


          <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
          @attr name me.imid.swipebacklayout.lib:theme
        */
        public static int View_theme = 4;
        /** Attributes that can be used with a ViewBackgroundHelper.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ViewBackgroundHelper_android_background android:background}</code></td><td></td></tr>
           <tr><td><code>{@link #ViewBackgroundHelper_backgroundTint me.imid.swipebacklayout.lib:backgroundTint}</code></td><td></td></tr>
           <tr><td><code>{@link #ViewBackgroundHelper_backgroundTintMode me.imid.swipebacklayout.lib:backgroundTintMode}</code></td><td></td></tr>
           </table>
           @see #ViewBackgroundHelper_android_background
           @see #ViewBackgroundHelper_backgroundTint
           @see #ViewBackgroundHelper_backgroundTintMode
         */
        public static final int[] ViewBackgroundHelper = {
            0x010100d4, 0x7f0100d5, 0x7f0100d6
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#background}
          attribute's value can be found in the {@link #ViewBackgroundHelper} array.
          @attr name android:background
        */
        public static int ViewBackgroundHelper_android_background = 0;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#backgroundTint}
          attribute's value can be found in the {@link #ViewBackgroundHelper} array.


          <p>Must be a color value, in the form of "<code>#<i>rgb</i></code>", "<code>#<i>argb</i></code>",
"<code>#<i>rrggbb</i></code>", or "<code>#<i>aarrggbb</i></code>".
<p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type.
          @attr name me.imid.swipebacklayout.lib:backgroundTint
        */
        public static int ViewBackgroundHelper_backgroundTint = 1;
        /**
          <p>This symbol is the offset where the {@link me.imid.swipebacklayout.lib.R.attr#backgroundTintMode}
          attribute's value can be found in the {@link #ViewBackgroundHelper} array.


          <p>Must be one of the following constant values.</p>
<table>
<colgroup align="left" />
<colgroup align="left" />
<colgroup align="left" />
<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
<tr><td><code>src_over</code></td><td>3</td><td></td></tr>
<tr><td><code>src_in</code></td><td>5</td><td></td></tr>
<tr><td><code>src_atop</code></td><td>9</td><td></td></tr>
<tr><td><code>multiply</code></td><td>14</td><td></td></tr>
<tr><td><code>screen</code></td><td>15</td><td></td></tr>
</table>
          @attr name me.imid.swipebacklayout.lib:backgroundTintMode
        */
        public static int ViewBackgroundHelper_backgroundTintMode = 2;
        /** Attributes that can be used with a ViewStubCompat.
           <p>Includes the following attributes:</p>
           <table>
           <colgroup align="left" />
           <colgroup align="left" />
           <tr><th>Attribute</th><th>Description</th></tr>
           <tr><td><code>{@link #ViewStubCompat_android_id android:id}</code></td><td></td></tr>
           <tr><td><code>{@link #ViewStubCompat_android_inflatedId android:inflatedId}</code></td><td></td></tr>
           <tr><td><code>{@link #ViewStubCompat_android_layout android:layout}</code></td><td></td></tr>
           </table>
           @see #ViewStubCompat_android_id
           @see #ViewStubCompat_android_inflatedId
           @see #ViewStubCompat_android_layout
         */
        public static final int[] ViewStubCompat = {
            0x010100d0, 0x010100f2, 0x010100f3
        };
        /**
          <p>This symbol is the offset where the {@link android.R.attr#id}
          attribute's value can be found in the {@link #ViewStubCompat} array.
          @attr name android:id
        */
        public static int ViewStubCompat_android_id = 0;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#inflatedId}
          attribute's value can be found in the {@link #ViewStubCompat} array.
          @attr name android:inflatedId
        */
        public static int ViewStubCompat_android_inflatedId = 2;
        /**
          <p>This symbol is the offset where the {@link android.R.attr#layout}
          attribute's value can be found in the {@link #ViewStubCompat} array.
          @attr name android:layout
        */
        public static int ViewStubCompat_android_layout = 1;
    };
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/viewtoimage/ViewToImageUtils.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper.viewtoimage;

import android.os.Environment;
import android.support.v4.media.session.PlaybackStateCompat;
import com.nicodelee.beautyarticle.utils.AndroidUtils;
import com.nicodelee.beautyarticle.utils.Logger;
import java.io.File;

/**
 * Created by NocodeLee on 16/6/2.
 * Email：<EMAIL>
 */
public class ViewToImageUtils {

  public static final String NOTES_CACHE_FOLDER = "Beautyacticle/saves";

  public static File getCacheFolderName() {
    File folder = new File(Environment.getExternalStorageDirectory(), NOTES_CACHE_FOLDER);
    if (folder.exists() || folder.mkdirs()) {
      return folder;
    }
    return null;
  }

  public static boolean isImageSaved(String fileName) {
    return (fileName.startsWith("content") || fileName.startsWith("file")) ? false : true;
  }


  public static boolean isLarge5M(File file) {
    Logger.d(
        "isLarge5M: fileName:" + file.getName() + " length:byte " + file.length() + " len M:" + ((
            file.length()
                / PlaybackStateCompat.ACTION_PLAY_FROM_MEDIA_ID)
            / PlaybackStateCompat.ACTION_PLAY_FROM_MEDIA_ID));
    if (file.length() > 5242880) {
      return true;
    }
    return false;
  }


}

<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/EndlessRecyclerOnScrollListener.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper;

import android.annotation.TargetApi;
import android.os.Build;
import android.support.v4.view.ViewCompat;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.AbsListView;
import com.nostra13.universalimageloader.core.ImageLoader;

public abstract class EndlessRecyclerOnScrollListener extends RecyclerView.OnScrollListener {
  public static String TAG = EndlessRecyclerOnScrollListener.class.getSimpleName();

  private int previousTotal = 0; // The total number of items in the dataset after the last load
  private boolean loading = true; // True if we are still waiting for the last set of data to load.
  private int visibleThreshold = 1;
  // The minimum amount of items to have below your current scroll position before loading more.
  int firstVisibleItem, visibleItemCount, totalItemCount;

  //    private int current_page = 1;
  private LinearLayoutManager mLinearLayoutManager;

  private ImageLoader imageLoader;
  private final boolean pauseOnScroll;
  private final boolean pauseOnSettling;
  private final RecyclerView.OnScrollListener externalListener;
  private boolean stopped = false;

  public EndlessRecyclerOnScrollListener(LinearLayoutManager linearLayoutManager,
      ImageLoader imageLoader, boolean pauseOnScroll, boolean pauseOnSettling) {
    this(linearLayoutManager, imageLoader, pauseOnScroll, pauseOnSettling, null);
    this.mLinearLayoutManager = linearLayoutManager;
  }

  public EndlessRecyclerOnScrollListener(LinearLayoutManager linearLayoutManager,
      ImageLoader imageLoader, boolean pauseOnScroll, boolean pauseOnSettling,
      RecyclerView.OnScrollListener customListener) {
    this.imageLoader = imageLoader;
    this.pauseOnScroll = pauseOnScroll;
    this.pauseOnSettling = pauseOnSettling;
    externalListener = customListener;
  }

  @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
    //super.onScrolled(recyclerView, dx, dy);
    if (externalListener != null) {
      externalListener.onScrolled(recyclerView, dx, dy);
    }

    if (mLinearLayoutManager == null) return;


    visibleItemCount = recyclerView.getChildCount();
    totalItemCount = mLinearLayoutManager.getItemCount();
    firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();

    if (loading) {
      if (totalItemCount > previousTotal) {
        loading = false;
        previousTotal = totalItemCount;
      }
    }
    //if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem + visibleThreshold)) {
    //  // End has been reached
    //  // Do something
    //  // current_page++;
    //  onLoadMore();
    //  loading = true;
    //}

  }

  @Override public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
    switch (newState) {
      case RecyclerView.SCROLL_STATE_IDLE:
        imageLoader.resume();
        stopped = false;
        if(isScollBottom(recyclerView)){
          onLoadMore();
          loading = true;
        }
        break;
      case RecyclerView.SCROLL_STATE_DRAGGING:
        if (pauseOnScroll) {
          imageLoader.pause();
          stopped = true;
        } else if (stopped) {
          imageLoader.resume();
          stopped = false;
        }
        break;
      case RecyclerView.SCROLL_STATE_SETTLING:
        if (pauseOnSettling) {
          imageLoader.pause();
          stopped = true;
        } else if (stopped) {
          imageLoader.resume();
          stopped = false;
        }
        break;
    }
    if (externalListener != null) {
      externalListener.onScrollStateChanged(recyclerView, newState);
    }
  }

  private boolean isScollBottom(RecyclerView recyclerView) {
    return !isCanScollVertically(recyclerView);
  }

  private boolean isCanScollVertically(RecyclerView recyclerView) {
    if (android.os.Build.VERSION.SDK_INT < 14) {
      return ViewCompat.canScrollVertically(recyclerView, 1) || recyclerView.getScrollY() < recyclerView.getHeight();
    } else {
      return ViewCompat.canScrollVertically(recyclerView, 1);
    }
  }

  @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
  public static boolean canChildScrollUp(View mTarget) {
    if (Build.VERSION.SDK_INT < 14) {
      if (mTarget instanceof AbsListView) {
        final AbsListView absListView = (AbsListView) mTarget;
        return absListView.getChildCount() > 0
            && (absListView.getFirstVisiblePosition() > 0 || absListView.getChildAt(0).getTop() < absListView.getPaddingTop());
      } else {
        return ViewCompat.canScrollVertically(mTarget, -1) || mTarget.getScrollY() > 0;
      }
    } else {
      return ViewCompat.canScrollVertically(mTarget, -1);
    }
  }

  public abstract void onLoadMore();

  public void reset(int previousTotal, boolean loading) {
    this.previousTotal = previousTotal;
    this.loading = loading;
  }
}

<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/SimpleCameraTwoConfigurator.java<|end_filename|>
package com.commonsware.cwac.cam2;

import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CaptureRequest;
import android.media.ImageReader;

/**
 * Stub implementation of CameraTwoConfigurator, to help ease
 * the implementation of this interface. Just extend this class
 * and override the specific methods that your plugin needs.
 */
public class SimpleCameraTwoConfigurator
  implements CameraTwoConfigurator {
  @Override
  public ImageReader buildImageReader() {
    return null;
  }

  @Override
  public void addToCaptureRequest(CameraCharacteristics cc,
                                  boolean facingFront,
                                  CaptureRequest.Builder captureBuilder) {

  }

  @Override
  public void addToPreviewRequest(CameraCharacteristics cc,
                                  CaptureRequest.Builder captureBuilder) {

  }
}


<|start_filename|>libraries/CommLib/src/com/nicodelee/viewpager/TabletInTransformet.java<|end_filename|>
package com.nicodelee.viewpager;

import android.view.View;

/**
 * Created by alee on 2015/9/28.
 */
public class TabletInTransformet extends ABaseTransformer {

  @Override
  protected void onTransform(View view, float position) {
    final float rotation = (position < 0 ? 30f : -30f) * Math.abs(position);

  }
}


<|start_filename|>libraries/multi-image-selector/src/main/java/me/nereo/multi_image_selector/PreviewPicturesActivity.java<|end_filename|>
package me.nereo.multi_image_selector;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.nicodelee.beautyarticle.ui.camara.PhotoProcessActivity;
import com.squareup.picasso.Callback;
import com.squareup.picasso.Picasso;
import java.io.File;
import java.util.ArrayList;
import java.util.logging.Logger;
import me.nereo.multi_image_selector.view.DetailViewPager;
import uk.co.senab.photoview.PhotoView;

public class PreviewPicturesActivity extends AppCompatActivity {
  DetailViewPager pager;
  MyPagerAdapter adapter;
  private ArrayList<String> picList = new ArrayList<>();
  private int index;
  private TextView tvCancel, tvSend;

  public static void preViewSingle(Activity activity, String url, int requestCode) {
    Intent intent = new Intent(activity, PreviewPicturesActivity.class);
    ArrayList<String> pic = new ArrayList<>();
    pic.add(url);
    intent.putExtra("pics", pic);
    activity.startActivityForResult(intent, requestCode);
  }

  @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_preview_pictures);
    pager = (DetailViewPager) findViewById(R.id.pager);
    tvCancel = (TextView) findViewById(R.id.tv_cancel);
    tvSend = (TextView) findViewById(R.id.tv_send);

    picList = getIntent().getStringArrayListExtra("pics");
    index = getIntent().getIntExtra("index", 0);
    if (picList.size() != 0) {
      adapter = new MyPagerAdapter();
      pager.setAdapter(adapter);
      pager.setCurrentItem(index);
    }

    pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
      @Override
      public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

      }

      @Override public void onPageSelected(int position) {
        index = position;
      }

      @Override public void onPageScrollStateChanged(int state) {

      }
    });

    tvCancel.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        finish();
      }
    });

    tvSend.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        //Intent intent = new Intent();
        //intent.putExtra("pics", picList);
        //intent.putExtra("index", index);
        //setResult(RESULT_OK, intent);
        Intent intent = new Intent(PreviewPicturesActivity.this,PhotoProcessActivity.class);
        intent.putExtra("uri",picList.get(index).toString());
        startActivity(intent);
        MultiImageSelectorActivity.multiImageSelectorActivity.finish();
        finish();
      }
    });
  }

  private class MyPagerAdapter extends PagerAdapter {

    @Override public int getCount() {
      return picList.size();
    }

    @Override public boolean isViewFromObject(View view, Object o) {
      return view.equals(o);
    }

    @Override public Object instantiateItem(ViewGroup container, int position) {
      View view = View.inflate(PreviewPicturesActivity.this, R.layout.item_image, null);
      PhotoView imageView = (PhotoView) view.findViewById(R.id.iv_pic);

      Picasso.with(PreviewPicturesActivity.this).load(new File(picList.get(position)))
          //                    .placeholder(R.drawable.default_error)
          .centerInside().resize(800, 1500)
          //.error(R.drawable.default_error)
          .into(imageView, new Callback() {
            @Override public void onSuccess() {
              //                            attacher = new PhotoViewAttacher(bgPic);
            }

            @Override public void onError() {
            }
          });
      container.addView(view, 0);
      return view;
    }

    @Override public void destroyItem(ViewGroup container, int position, Object object) {
      container.removeView((View) object);
    }
  }
}

<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/app/APP.java<|end_filename|>
package com.nicodelee.beautyarticle.app;

import android.app.Application;
import android.content.Context;
import android.graphics.Bitmap;
import android.support.annotation.NonNull;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.internal.di.components.ApiComponent;
import com.nicodelee.beautyarticle.internal.di.components.AppComponent;
import com.nicodelee.beautyarticle.internal.di.components.DaggerApiComponent;
import com.nicodelee.beautyarticle.internal.di.components.DaggerAppComponent;
import com.nicodelee.beautyarticle.internal.di.modules.ApplicationModule;
import com.nicodelee.beautyarticle.utils.AndroidUtils;
import com.nicodelee.beautyarticle.utils.DevicesUtil;
import com.nicodelee.beautyarticle.viewhelper.OkHttpImageDownloader;
import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import com.nostra13.universalimageloader.core.assist.QueueProcessingType;
import com.nostra13.universalimageloader.core.display.SimpleBitmapDisplayer;
import com.raizlabs.android.dbflow.config.FlowManager;
import java.io.File;
import okhttp3.OkHttpClient;
import uk.co.chrisjenx.calligraphy.CalligraphyConfig;

public class APP extends Application {

  private static APP app;

  public static APP getInstance() {
    return app;
  }

  //private RefWatcher refWatcher;

  private AppComponent applicationComponent;
  private ApiComponent apiComponent;

  @Override public void onCreate() {
    super.onCreate();
    initialzeInjector();
    initApiialzeInjector();
    FlowManager.init(this);//DbFlow
    CalligraphyConfig.initDefault(
        new CalligraphyConfig.Builder().setDefaultFontPath("fonts/Roboto-Light.ttf")
            .setFontAttrId(R.attr.fontPath)
            .build());
    app = this;

    //refWatcher = LeakCanary.install(this);

    AndroidUtils.init(this);
    DevicesUtil.getScreenConfig(this);
    initImageLoader(getApplicationContext());
  }

  //public static RefWatcher getRefWatcher(Context context) {
  //  return app.refWatcher;
  //}

  public AppComponent getApplicationComponent() {
    return applicationComponent;
  }

  public ApiComponent getApiComponent() {
    return apiComponent;
  }

  public static APP from(@NonNull Context context) {
    return (APP) context.getApplicationContext();
  }

  private void initialzeInjector() {
    this.applicationComponent =
        DaggerAppComponent.builder()
            .applicationModule(new ApplicationModule(this))
            .build();
    //applicationComponent.inject(this);
  }

  private void initApiialzeInjector() {
    this.apiComponent =
        DaggerApiComponent.builder()
            .applicationModule(new ApplicationModule(this))
            .build();
  }
  private void initImageLoader(Context context) {
    ImageLoaderConfiguration.Builder config =
        new ImageLoaderConfiguration.Builder(context).threadPriority(Thread.NORM_PRIORITY - 2)
            .denyCacheImageMultipleSizesInMemory()
            .diskCacheFileNameGenerator(new Md5FileNameGenerator())
            .diskCacheSize(50 * 1024 * 1024)
            .imageDownloader(new OkHttpImageDownloader(context, new OkHttpClient()))
            .diskCache(new UnlimitedDiskCache(new File(AndroidUtils.IMAGE_CACHE_PATH)))
            .tasksProcessingOrder(QueueProcessingType.LIFO)
            .diskCacheFileCount(200)
            .writeDebugLogs();

    ImageLoader.getInstance().init(config.build());
  }

  public ImageLoader imageLoader = ImageLoader.getInstance();
  public static DisplayImageOptions options =
      new DisplayImageOptions.Builder().showImageOnLoading(R.color.loading_cl)
          .showImageForEmptyUri(R.color.loading_cl)
          .showImageOnFail(R.color.loading_cl)
          .cacheInMemory(true)
          .cacheOnDisk(true)
          .considerExifParams(true)
          .bitmapConfig(Bitmap.Config.RGB_565)
          // .imageScaleType(ImageScaleType.EXACTLY)
          //			.showImageForEmptyUri(R.drawable.image_loader_empty)
          //			.showImageOnFail(R.drawable.image_loader_fail)
          //			.showImageOnLoading(R.drawable.image_loader_loading)
          .displayer(new SimpleBitmapDisplayer())
          .build();
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/ShareButton.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper;

import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.nicodelee.beautyarticle.R;

public class ShareButton extends LinearLayout {

  private ImageView mButton;
  private TextView mSocial;
  private Drawable mImage;
  private String mText;

  public ShareButton(Context context) {
    this(context, null);
  }

  public ShareButton(Context context, AttributeSet attrs) {
    super(context, attrs);
    final TypedArray attributes =
        context.getTheme().obtainStyledAttributes(attrs, R.styleable.ShareButton, 0, 0);
    mText = attributes.getString(R.styleable.ShareButton_description);
    mImage = attributes.getDrawable(R.styleable.ShareButton_icons);
    LayoutInflater inflater = LayoutInflater.from(context);
    mButton = (ImageView) inflater.inflate(R.layout.share_image_button, null);
    mSocial = (TextView) inflater.inflate(R.layout.share_image_text, null);
    mSocial.setText(mText);
    setOrientation(VERTICAL);
    mButton.setImageDrawable(mImage);
    setGravity(Gravity.CENTER);
    addView(mButton);
    addView(mSocial);
    attributes.recycle();
  }

  @Override public void setOnClickListener(OnClickListener l) {
    mButton.setOnClickListener(l);
  }
}


<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/MyCameraFragment.java<|end_filename|>
///**
// * Copyright (c) 2015 CommonsWare, LLC
// * <p/>
// * Licensed under the Apache License, Version 2.0 (the "License"); you may
// * not use this file except in compliance with the License. You may obtain
// * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
// * <p/>
// * Unless required by applicable law or agreed to in writing, software
// * distributed under the License is distributed on an "AS IS" BASIS,
// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// * See the License for the specific language governing permissions and
// * limitations under the License.
// */
//
//package com.commonsware.cwac.cam2;
//
//import android.animation.Animator;
//import android.animation.AnimatorListenerAdapter;
//import android.animation.AnimatorSet;
//import android.animation.ObjectAnimator;
//import android.app.ActionBar;
//import android.app.Fragment;
//import android.content.Context;
//import android.media.MediaScannerConnection;
//import android.net.Uri;
//import android.os.Build;
//import android.os.Bundle;
//import android.os.SystemClock;
//import android.util.Log;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.view.animation.OvershootInterpolator;
//import android.widget.ImageView;
//import com.github.clans.fab.FloatingActionButton;
//import com.github.clans.fab.FloatingActionMenu;
//import de.greenrobot.event.EventBus;
//import java.io.File;
//import java.util.LinkedList;
//
///**
// * Fragment for displaying a camera preview, with hooks to allow
// * you (or the user) to take a picture.
// */
//public class MyCameraFragment extends Fragment {
//  private static final String ARG_OUTPUT="output";
//  private static final String ARG_UPDATE_MEDIA_STORE="updateMediaStore";
//  private static final String ARG_IS_VIDEO="isVideo";
//  private static final String ARG_VIDEO_QUALITY="quality";
//  private static final String ARG_SIZE_LIMIT="sizeLimit";
//  private static final String ARG_DURATION_LIMIT="durationLimit";
//  private CameraController ctlr;
//  private ViewGroup previewStack;
//  private FloatingActionButton fabPicture;
//  private FloatingActionButton fabSwitch;
//  private View progress;
//  private boolean isVideoRecording=false;
//  private boolean mirrorPreview=false;
//
//  public static MyCameraFragment newPictureInstance(Uri output,
//                                                  boolean updateMediaStore) {
//    MyCameraFragment f=new MyCameraFragment();
//    Bundle args=new Bundle();
//
//    args.putParcelable(ARG_OUTPUT, output);
//    args.putBoolean(ARG_UPDATE_MEDIA_STORE, updateMediaStore);
//    args.putBoolean(ARG_IS_VIDEO, false);
//    f.setArguments(args);
//
//    return(f);
//  }
//
//  public static MyCameraFragment newVideoInstance(Uri output,
//                                                boolean updateMediaStore,
//                                                int quality, int sizeLimit,
//                                                int durationLimit) {
//    MyCameraFragment f=new MyCameraFragment();
//    Bundle args=new Bundle();
//
//    args.putParcelable(ARG_OUTPUT, output);
//    args.putBoolean(ARG_UPDATE_MEDIA_STORE, updateMediaStore);
//    args.putBoolean(ARG_IS_VIDEO, true);
//    args.putInt(ARG_VIDEO_QUALITY, quality);
//    args.putInt(ARG_SIZE_LIMIT, sizeLimit);
//    args.putInt(ARG_DURATION_LIMIT, durationLimit);
//    f.setArguments(args);
//
//    return(f);
//  }
//
//  /**
//   * Standard fragment entry point.
//   *
//   * @param savedInstanceState State of a previous instance
//   */
//  @Override
//  public void onCreate(Bundle savedInstanceState) {
//    super.onCreate(savedInstanceState);
//
//    setRetainInstance(true);
//  }
//
//  /**
//   * Standard lifecycle method, passed along to the CameraController.
//   */
//  @Override
//  public void onStart() {
//    super.onStart();
//
//    EventBus.getDefault().register(this);
//
//    if (ctlr!=null) {
//      ctlr.start();
//    }
//  }
//
//  @Override
//  public void onHiddenChanged(boolean isHidden) {
//    super.onHiddenChanged(isHidden);
//
//    if (!isHidden) {
//      ActionBar ab=getActivity().getActionBar();
//
//      if (ab!=null) {
//        ab.setBackgroundDrawable(getActivity()
//            .getResources()
//            .getDrawable(R.drawable.cwac_cam2_action_bar_bg_transparent));
//        ab.setTitle("");
//
//        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//          ab.setDisplayHomeAsUpEnabled(false);
//        }
//        else {
//          ab.setDisplayShowHomeEnabled(false);
//          ab.setHomeButtonEnabled(false);
//        }
//      }
//
//      if (fabPicture!=null) {
//        fabPicture.setEnabled(true);
//        fabSwitch.setEnabled(true);
//      }
//    }
//  }
//
//  /**
//   * Standard lifecycle method, for when the fragment moves into
//   * the stopped state. Passed along to the CameraController.
//   */
//  @Override
//  public void onStop() {
//    if (ctlr!=null) {
//      ctlr.stop();
//    }
//
//    EventBus.getDefault().unregister(this);
//
//    super.onStop();
//  }
//
//  /**
//   * Standard lifecycle method, for when the fragment is utterly,
//   * ruthlessly destroyed. Passed along to the CameraController,
//   * because why should the fragment have all the fun?
//   */
//  @Override
//  public void onDestroy() {
//    if (ctlr!=null) {
//      ctlr.destroy();
//    }
//
//    super.onDestroy();
//  }
//
//  /**
//   * Standard callback method to create the UI managed by
//   * this fragment.
//   *
//   * @param inflater Used to inflate layouts
//   * @param container Parent of the fragment's UI (eventually)
//   * @param savedInstanceState State of a previous instance
//   * @return the UI being managed by this fragment
//   */
//  @Override
//  public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//    View v=inflater.inflate(R.layout.cwac_cam2_fragment, container, false);
//
//    previewStack=(ViewGroup)v.findViewById(R.id.cwac_cam2_preview_stack);
//    progress=v.findViewById(R.id.cwac_cam2_progress);
//
//    fabPicture=(FloatingActionButton)v.findViewById(R.id.cwac_cam2_picture);
//
//    if (isVideo()) {
//      fabPicture.setImageResource(R.drawable.cwac_cam2_ic_videocam);
//    }
//
//    fabPicture.setOnClickListener(new View.OnClickListener() {
//      @Override
//      public void onClick(View view) {
//        performCameraAction();
//      }
//    });
//
//    fabSwitch=(FloatingActionButton)v.findViewById(R.id.cwac_cam2_switch_camera);
//    fabSwitch.setOnClickListener(new View.OnClickListener() {
//      @Override
//      public void onClick(View view) {
//        progress.setVisibility(View.VISIBLE);
//        fabSwitch.setEnabled(false);
//        ctlr.switchCamera();
//      }
//    });
//
//    changeMenuIconAnimation((FloatingActionMenu)v.findViewById(R.id.cwac_cam2_settings));
//
//    onHiddenChanged(false); // hack, since this does not get
//                            // called on initial display
//
//    fabPicture.setEnabled(false);
//    fabSwitch.setEnabled(false);
//
//    if (ctlr!=null && ctlr.getNumberOfCameras()>0) {
//      prepController();
//    }
//
//    return(v);
//  }
//
//  /**
//   * @return the CameraController this fragment delegates to
//   */
//  public CameraController getController() {
//    return(ctlr);
//  }
//
//  /**
//   * Establishes the controller that this fragment delegates to
//   *
//   * @param ctlr the controller that this fragment delegates to
//   */
//  public void setController(CameraController ctlr) {
//    this.ctlr=ctlr;
//  }
//
//  /**
//   * Indicates if we should mirror the preview or not. Defaults
//   * to false.
//   *
//   * @param mirror true if we should horizontally mirror the
//   *               preview, false otherwise
//   */
//  public void setMirrorPreview(boolean mirror) {
//    this.mirrorPreview=mirror;
//  }
//
//  @SuppressWarnings("unused")
//  public void onEventMainThread(CameraController.ControllerReadyEvent event) {
//    if (event.isEventForController(ctlr)) {
//      prepController();
//    }
//  }
//
//  @SuppressWarnings("unused")
//  public void onEventMainThread(CameraEngine.OpenedEvent event) {
//    if (event.exception==null) {
//      progress.setVisibility(View.GONE);
//      fabSwitch.setEnabled(true);
//      fabPicture.setEnabled(true);
//    }
//    else {
//      getActivity().finish();
//    }
//  }
//
//  @SuppressWarnings("unused")
//  public void onEventMainThread(CameraEngine.VideoTakenEvent event) {
//    if (event.exception==null) {
//      if (getArguments().getBoolean(ARG_UPDATE_MEDIA_STORE, false)) {
//        final Context app=getActivity().getApplicationContext();
//        Uri output=getArguments().getParcelable(ARG_OUTPUT);
//        final String path=output.getPath();
//
//        new Thread() {
//          @Override
//          public void run() {
//            SystemClock.sleep(2000);
//            MediaScannerConnection.scanFile(app,
//              new String[]{path}, new String[]{"video/mp4"},
//              null);
//          }
//        }.start();
//      }
//
//      isVideoRecording=false;
//      fabPicture.setImageResource(R.drawable.cwac_cam2_ic_videocam);
//      fabPicture.setColorNormalResId(R.color.cwac_cam2_picture_fab);
//      fabPicture.setColorPressedResId(R.color.cwac_cam2_picture_fab_pressed);
//    }
//    else {
//      getActivity().finish();
//    }
//  }
//
//  protected void performCameraAction() {
//    if (isVideo()) {
//      recordVideo();
//    }
//    else {
//      takePicture();
//    }
//  }
//
//  private void takePicture() {
//    Uri output=getArguments().getParcelable(ARG_OUTPUT);
//
//    PictureTransaction.Builder b=new PictureTransaction.Builder();
//
//    if (output!=null) {
//      b.toUri(getActivity(), output,
//          getArguments().getBoolean(ARG_UPDATE_MEDIA_STORE, false));
//    }
//
//    fabPicture.setEnabled(false);
//    fabSwitch.setEnabled(false);
//    ctlr.takePicture(b.build());
//  }
//
//  private void recordVideo() {
//    if (isVideoRecording) {
//      try {
//        ctlr.stopVideoRecording();
//      }
//      catch (Exception e) {
//        Log.e(getClass().getSimpleName(), "Exception stopping recording of video", e);
//        // TODO: um, do something here
//      }
//    }
//    else {
//      try {
//        VideoTransaction.Builder b=new VideoTransaction.Builder();
//        Uri output=getArguments().getParcelable(ARG_OUTPUT);
//
//        b.to(new File(output.getPath()))
//         .quality(getArguments().getInt(ARG_VIDEO_QUALITY, 1))
//         .sizeLimit(getArguments().getInt(ARG_SIZE_LIMIT, 0))
//         .durationLimit(getArguments().getInt(ARG_DURATION_LIMIT, 0));
//
//        ctlr.recordVideo(b.build());
//        isVideoRecording=true;
//        fabPicture.setImageResource(R.drawable.cwac_cam2_ic_stop);
//        fabPicture.setColorNormalResId(R.color.cwac_cam2_recording_fab);
//        fabPicture.setColorPressedResId(R.color.cwac_cam2_recording_fab_pressed);
//      }
//      catch (Exception e) {
//        Log.e(getClass().getSimpleName(), "Exception recording video", e);
//        // TODO: um, do something here
//      }
//    }
//  }
//
//  private boolean isVideo() {
//    return(getArguments().getBoolean(ARG_IS_VIDEO, false));
//  }
//
//  private void prepController() {
//    LinkedList<CameraView> cameraViews=new LinkedList<CameraView>();
//    CameraView cv=(CameraView)previewStack.getChildAt(0);
//
//    cv.setMirror(mirrorPreview);
//    cameraViews.add(cv);
//
//    for (int i=1; i < ctlr.getNumberOfCameras(); i++) {
//      cv=new CameraView(getActivity());
//      cv.setVisibility(View.INVISIBLE);
//      cv.setMirror(mirrorPreview);
//      previewStack.addView(cv);
//      cameraViews.add(cv);
//    }
//
//    ctlr.setCameraViews(cameraViews);
//  }
//
//  // based on https://goo.gl/3IUM8K
//
//  private void changeMenuIconAnimation(final FloatingActionMenu menu) {
//    AnimatorSet set=new AnimatorSet();
//    final ImageView v=menu.getMenuIconView();
//    ObjectAnimator scaleOutX=ObjectAnimator.ofFloat(v, "scaleX", 1.0f, 0.2f);
//    ObjectAnimator scaleOutY=ObjectAnimator.ofFloat(v, "scaleY", 1.0f, 0.2f);
//    ObjectAnimator scaleInX=ObjectAnimator.ofFloat(v, "scaleX", 0.2f, 1.0f);
//    ObjectAnimator scaleInY=ObjectAnimator.ofFloat(v, "scaleY", 0.2f, 1.0f);
//
//    scaleOutX.setDuration(50);
//    scaleOutY.setDuration(50);
//
//    scaleInX.setDuration(150);
//    scaleInY.setDuration(150);
//    scaleInX.addListener(new AnimatorListenerAdapter() {
//      @Override
//      public void onAnimationStart(Animator animation) {
//        v.setImageResource(menu.isOpened()
//          ? R.drawable.cwac_cam2_ic_action_settings
//          : R.drawable.cwac_cam2_ic_close);
//        // yes, that seems backwards, but it works
//        // presumably, opened state not yet toggled
//      }
//    });
//
//    set.play(scaleOutX).with(scaleOutY);
//    set.play(scaleInX).with(scaleInY).after(scaleOutX);
//    set.setInterpolator(new OvershootInterpolator(2));
//    menu.setIconToggleAnimatorSet(set);
//  }
//}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/api/URLUtils.java<|end_filename|>
package com.nicodelee.beautyarticle.api;

/**
 * Created by Lin on 15/3/25.
 */
public class URLUtils {
  public static final String BASE_URL = "http://1.beautifulwords.applinzi.com";
  //public static final String BASE_URL = "http://beautifulwords.sinaapp.com";
}


<|start_filename|>libraries/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/ImageGridAdapter.java<|end_filename|>
package me.nereo.multi_image_selector.adapter;

import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;

import com.squareup.picasso.Picasso;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

import me.nereo.multi_image_selector.R;
import me.nereo.multi_image_selector.bean.Image;

/**
 * 图片Adapter
 * Created by Nereo on 2015/4/7.
 */
public class ImageGridAdapter extends BaseAdapter {

    private static final int TYPE_CAMERA = 0;
    private static final int TYPE_NORMAL = 1;

    private Context mContext;

    private LayoutInflater mInflater;
    private boolean showCamera = true;
    private boolean showSelectIndicator = true;

    private List<Image> mImages = new ArrayList<>();
    private List<Image> mSelectedImages = new ArrayList<>();

    private int mItemSize;
    private GridView.LayoutParams mItemLayoutParams;

    public ImageGridAdapter(Context context, boolean showCamera) {
        mContext = context;
        mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        this.showCamera = showCamera;
        mItemLayoutParams = new GridView.LayoutParams(GridView.LayoutParams.MATCH_PARENT, GridView.LayoutParams.MATCH_PARENT);
    }

    /**
     * 显示选择指示器
     *
     * @param b
     */
    public void showSelectIndicator(boolean b) {
        showSelectIndicator = b;
    }

    public boolean isShowCamera() {
        return showCamera;
    }

    public void setShowCamera(boolean b) {
        if (showCamera == b) return;

        showCamera = b;
        notifyDataSetChanged();
    }

    /**
     * 选择某个图片，改变选择状态
     *
     * @param image
     */
    public void select(Image image) {
        if (mSelectedImages.contains(image)) {
            mSelectedImages.remove(image);
        } else {
            mSelectedImages.add(image);
        }
        notifyDataSetChanged();
    }

    /**
     * 通过图片路径设置默认选择
     *
     * @param resultList
     */
    public void setDefaultSelected(ArrayList<String> resultList) {
        for (String path : resultList) {
            Image image = getImageByPath(path);
            if (image != null) {
                mSelectedImages.add(image);
            }
        }
        if (mSelectedImages.size() > 0) {
            notifyDataSetChanged();
        }
    }

    private Image getImageByPath(String path) {
        if (mImages != null && mImages.size() > 0) {
            for (Image image : mImages) {
                if (image.path.equalsIgnoreCase(path)) {
                    return image;
                }
            }
        }
        return null;
    }

    public List<Image> getmImages() {
        return mImages;
    }

    /**
     * 设置数据集
     *
     * @param images
     */
    public void setData(List<Image> images) {
        mSelectedImages.clear();

        if (images != null && images.size() > 0) {
            mImages = images;
        } else {
            mImages.clear();
        }
        notifyDataSetChanged();
    }


    /**
     * 重置每个Column的Size
     *
     * @param columnWidth
     */
    public void setItemSize(int columnWidth) {

        if (mItemSize == columnWidth) {
            return;
        }

        mItemSize = columnWidth;

        mItemLayoutParams = new GridView.LayoutParams(mItemSize, mItemSize);

        notifyDataSetChanged();
    }

    @Override
    public int getViewTypeCount() {
        return 2;
    }

    @Override
    public int getItemViewType(int position) {
        if (showCamera) {
            return position == 0 ? TYPE_CAMERA : TYPE_NORMAL;
        }
        return TYPE_NORMAL;
    }

    @Override
    public int getCount() {
        return showCamera ? mImages.size() + 1 : mImages.size();
    }

    @Override
    public Image getItem(int i) {
        if (showCamera) {
            if (i == 0) {
                return null;
            }
            return mImages.get(i - 1);
        } else {
            return mImages.get(i);
        }
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {

        int type = getItemViewType(i);
        if (type == TYPE_CAMERA) {
            view = mInflater.inflate(R.layout.list_item_camera, viewGroup, false);
            view.setTag(null);
        } else if (type == TYPE_NORMAL) {
            ViewHolde holde;
            if (view == null) {
                view = mInflater.inflate(R.layout.list_item_image, viewGroup, false);
                holde = new ViewHolde(view);
            } else {
                holde = (ViewHolde) view.getTag();
                if (holde == null) {
                    view = mInflater.inflate(R.layout.list_item_image, viewGroup, false);
                    holde = new ViewHolde(view);
                }
            }
            if (holde != null) {
                holde.bindData(getItem(i));
            }
        }

        /** Fixed View Size */
        GridView.LayoutParams lp = (GridView.LayoutParams) view.getLayoutParams();
        if (lp.height != mItemSize) {
            view.setLayoutParams(mItemLayoutParams);
        }

        return view;
    }

    class ViewHolde {
        ImageView image;
        ImageView indicator;

        ViewHolde(View view) {
            image = (ImageView) view.findViewById(R.id.image);
            indicator = (ImageView) view.findViewById(R.id.checkmark);
            view.setTag(this);
        }

        void bindData(final Image data) {
            if (data == null) return;
            // 处理单选和多选状态
            if (showSelectIndicator) {
                indicator.setVisibility(View.VISIBLE);
                if (mSelectedImages.contains(data)) {
                    // 设置选中状态
                    indicator.setImageResource(R.drawable.icon_photo_choice);
                } else {
                    // 未选择
                    indicator.setImageResource(android.R.color.transparent);
                }
            } else {
                indicator.setVisibility(View.GONE);
            }
            File imageFile = new File(data.path);

//            Log.e("image==",data.path);

            if (mItemSize > 0) {
                // 显示图片
                Picasso.with(mContext)
                        .load(imageFile)
                        .placeholder(R.drawable.default_error)
                                //.error(R.drawable.default_error)
                        .resize(mItemSize, mItemSize)
                        .centerCrop()
                        .into(image);
            }
        }
    }

}


<|start_filename|>libraries/MeterialSettingLib/src/main/java/com/kenumir/materialsettings/MaterialSettings.java<|end_filename|>
package com.kenumir.materialsettings;

import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import com.kenumir.materialsettings.storage.SimpleStorageInterface;
import com.kenumir.materialsettings.storage.StorageInterface;
import java.util.HashMap;
import java.util.Map;
import me.imid.swipebacklayout.lib.app.SwipeBackActivity;

public abstract class MaterialSettings extends SwipeBackActivity {

  public enum ContentFrames {
    FRAME_TOP(0),
    FRAME_TOP_INSIDE(1),
    FRAME_BOTTOM(2),
    FRAME_BOTTOM_INSIDE(3);

    private int id;

    ContentFrames(int idx) {
      id = idx;
    }

    public int getValue() {
      return this.id;
    }
  }

  private static String SAVE_PREFIX = "SSI_";

  private LinearLayout material_settings_content;
  private Toolbar toolbar;
  private StorageInterface mStorageInterface;
  private HashMap<String, MaterialSettingsItem> items;
  private FrameLayout[] frames;

  @Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(com.kenumir.materialsettings.R.layout.activity_material_settings);

    items = new HashMap<>();

    toolbar = (Toolbar) findViewById(com.kenumir.materialsettings.R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setDisplayShowHomeEnabled(true);
    getSupportActionBar().setTitle("设置");

    material_settings_content =
        (LinearLayout) findViewById(com.kenumir.materialsettings.R.id.material_settings_content);
    frames = new FrameLayout[4];
    frames[0] =
        (FrameLayout) findViewById(com.kenumir.materialsettings.R.id.material_settings_top_frame);
    frames[1] = (FrameLayout) findViewById(
        com.kenumir.materialsettings.R.id.material_settings_top_frame_inside);
    frames[2] = (FrameLayout) findViewById(
        com.kenumir.materialsettings.R.id.material_settings_bottom_frame_inside);
    frames[3] = (FrameLayout) findViewById(
        com.kenumir.materialsettings.R.id.material_settings_bottom_frame);

    mStorageInterface = initStorageInterface();

    if (savedInstanceState != null) {
      for (String key : savedInstanceState.keySet()) {
        if (key.startsWith(SAVE_PREFIX)) {
          String keyName = key.substring(SAVE_PREFIX.length());
          Object value = savedInstanceState.get(key);
          //Log.i("tests", "k: " + key + " k2: " + keyName  +", t=" + value.getClass().getName() + ", v=" + value);
          if (value instanceof String) {
            mStorageInterface.save(keyName, (String) value);
          } else if (value instanceof Integer) {
            mStorageInterface.save(keyName, (Integer) value);
          } else if (value instanceof Float) {
            mStorageInterface.save(keyName, (Float) value);
          } else if (value instanceof Long) {
            mStorageInterface.save(keyName, (Long) value);
          } else if (value instanceof Boolean) {
            mStorageInterface.save(keyName, (Boolean) value);
          } else {
            mStorageInterface.save(keyName, value.toString());
          }
        }
      }
    }
  }

  @Override protected void onSaveInstanceState(Bundle outState) {
    StorageInterface si = getStorageInterface();
    if (si instanceof SimpleStorageInterface) {
      saveAll();
      Map<String, ?> all = ((SimpleStorageInterface) si).getAll();
      if (all.size() > 0) {
        // save to bundle
        for (String key : all.keySet()) {
          Object value = all.get(key);
          if (value instanceof String) {
            outState.putString(SAVE_PREFIX + key, (String) value);
          } else if (value instanceof Integer) {
            outState.putInt(SAVE_PREFIX + key, (Integer) value);
          } else if (value instanceof Float) {
            outState.putFloat(SAVE_PREFIX + key, (Float) value);
          } else if (value instanceof Long) {
            outState.putString(SAVE_PREFIX + key, (String) value);
          } else if (value instanceof Boolean) {
            outState.putBoolean(SAVE_PREFIX + key, (Boolean) value);
          } else {
            outState.putString(SAVE_PREFIX + key, value.toString());
          }
        }
      }
    }
    super.onSaveInstanceState(outState);
  }

  public FrameLayout getContentFrame(ContentFrames frame) {
    return frames[frame.getValue()];
  }

  /**
   * save all settings values at StorageInterface
   */
  public void saveAll() {
    for (String key : items.keySet()) {
      items.get(key).save();
    }
  }

  public void addItem(MaterialSettingsItem item) {
    View newView = item.getView(material_settings_content);
    if (newView != null) {
      material_settings_content.addView(newView);
      items.put(item.getName(), item);
    }
  }

  public MaterialSettingsItem getItem(String keyName) {
    return items.get(keyName);
  }

  public StorageInterface getStorageInterface() {
    return mStorageInterface;
  }

  public abstract StorageInterface initStorageInterface();
}


<|start_filename|>libraries/CommLib/src/com/nicodelee/view/LoadingDialog.java<|end_filename|>
package com.nicodelee.view;

import android.app.AlertDialog;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.nicodelee.R;

public class LoadingDialog extends AlertDialog {
	private TextView loginpay_text = null;
	private String msg;
	private android.view.View.OnClickListener mListener;
	private Context context;
	private RelativeLayout relativeLayout;
	private int backgroundColor, textColor, backgroundResource = 0;
	private Drawable drawable = null;

	public LoadingDialog(Context context) {
		super(context);
		this.context = context;
	}

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.loginpaydialog);
		relativeLayout = (RelativeLayout) this.findViewById(R.id.mypaydialog);
		loginpay_text = (TextView) this.findViewById(R.id.loginpay_text);
		loginpay_text.setText(msg);

		if (textColor != 0) {
			loginpay_text.setTextColor(textColor);
		}
		if (backgroundResource != 0) {
			relativeLayout.setBackgroundResource(backgroundResource);
		}
		if (backgroundColor != 0) {
			relativeLayout.setBackgroundColor(backgroundColor);
		}
		if (drawable != null) {
			relativeLayout.setBackgroundDrawable(drawable);
		}

	}

	@Override
	public void setMessage(CharSequence message) {
		// TODO Auto-generated method stub
		// loginpay_text.setText(message);
		// super.setMessage(message);
	}

	public void setBackgroundResource(int resid) {
		this.backgroundResource = resid;
	}

	public void setBackgroundColor(int color) {
		this.backgroundColor = color;

	}

	public void setBackgroundDrawable(Drawable d) {
		this.drawable = d;
	}

	public void setTextSize(int color) {
		this.textColor = color;

	}

	public void setListener(android.view.View.OnClickListener listener) {
		this.mListener = listener;
	}

	public void setMessage(String msg) {
		this.msg = msg;
		if (loginpay_text != null)
			loginpay_text.setText(msg);

		show();
	}

	public void setMessage(int msg) {
		this.msg = context.getString(msg);
	}

	public void showDialog() {

		this.show();

	}

	public void closeDialog() {
		this.cancel();
	}

}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/bus/CropEvent.java<|end_filename|>
package com.nicodelee.beautyarticle.bus;

import com.nicodelee.view.CropImageView;

/**
 * Created by Nicodelee on 15/9/28.
 */
public class CropEvent {
  private String imagePath;
  private CropImageView.CropMode cropMode;

  public String getImagePath() {
    return imagePath;
  }

  public void setImagePath(String imagePath) {
    this.imagePath = imagePath;
  }

  public CropImageView.CropMode getCropMode() {
    return cropMode;
  }

  public void setCropMode(CropImageView.CropMode cropMode) {
    this.cropMode = cropMode;
  }
}


<|start_filename|>libraries/multi-image-selector/src/main/java/me/nereo/multi_image_selector/view/DetailViewPager.java<|end_filename|>
package me.nereo.multi_image_selector.view;

import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;

/**
 * Created by Nicodelee on 15/2/11.
 */
public class DetailViewPager extends ViewPager {

    private int mode = 0;

    public DetailViewPager(Context context) {
        super(context);
    }

    public DetailViewPager(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    /**
     * 修复 java.lang.IllegalArgumentException: pointerIndex out of range pointerIndex=-1 pointerCount=1  bug
     * 传说此bug是系统bug
     */
    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        try {
            return super.onInterceptTouchEvent(ev);
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
            return false;
        }
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        switch (event.getAction() & MotionEvent.ACTION_MASK) {
            case MotionEvent.ACTION_DOWN:
                mode = 1;
                break;
            case MotionEvent.ACTION_UP:
                mode = 0;
                break;
            case MotionEvent.ACTION_POINTER_UP:
                mode -= 1;
                break;
            case MotionEvent.ACTION_POINTER_DOWN:
                mode += 1;
                return false;
            case MotionEvent.ACTION_MOVE:
                if (mode >= 2) {
                    return false;
                }
                break;
        }
        return super.onTouchEvent(event);
    }
}

<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/viewtoimage/TempFileProvider.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper.viewtoimage;

import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
import android.util.Log;
import java.io.File;
import java.io.IOException;

/**
 * Created by NocodeLee on 16/6/2.
 * Email：<EMAIL>
 */
public class TempFileProvider extends ContentProvider {
  public static String AUTHORITY = null;
  private static String TAG = "TempFileProvider";
  private static final UriMatcher sURLMatcher = new UriMatcher(-1);

  static {
    AUTHORITY = "";
    sURLMatcher.addURI(AUTHORITY, "scrapSpace", 1);
    sURLMatcher.addURI(AUTHORITY, "scrapSpace/*", 2);
  }

  public boolean onCreate() {
    return true;
  }

  public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
      String sortOrder) {
    return null;
  }

  public Uri insert(Uri uri, ContentValues values) {
    return null;
  }

  public int delete(Uri uri, String selection, String[] selectionArgs) {
    return 0;
  }

  public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
    return 0;
  }

  public String getType(Uri uri) {
    return "*/*";
  }

  public static String getScrapPath(Context context, String fileName) {
    String filePath = null;
    File file = context.getExternalCacheDir();
    if (file == null) {
      file = context.getCacheDir();
    }
    if (file != null) {
      filePath = file.getAbsolutePath();
    }
    File noMedia = new File(filePath, ".nomedia");
    if (!noMedia.exists()) {
      try {
        noMedia.createNewFile();
      } catch (IOException e) {
        Log.e(TAG, "Can't create the nomedia, e:" + e);
      }
    }
    return filePath + "/" + fileName;
  }

  public static final String SHARE_IMAGE_CACHE = "Share_Cache_";

  public static File getSharedImage(Context context, String name) {
    File cacheDir = new File(getScrapPath(context, ""));
    if (cacheDir.exists()) {
      File[] files = cacheDir.listFiles();
      long now = System.currentTimeMillis();
      for (File file : files) {
        if (file.getName().startsWith(SHARE_IMAGE_CACHE) && now - file.lastModified() > 1800000) {
          file.delete();
        }
      }
    } else {
      cacheDir.mkdir();
    }
    File result = new File(getScrapPath(context, name));
    if (!result.exists()) {
      try {
        result.createNewFile();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
    return result;
  }

  public static String getScrapPath(Context context) {
    return getScrapPath(context, ".temp");
  }

  public static Uri renameScrapFile(String fileExtension, String uniqueIdentifier,
      Context context) {
    String filePath = getScrapPath(context);
    if (uniqueIdentifier == null) {
      uniqueIdentifier = "";
    }
    File newTempFile = new File(getScrapPath(context, ".temp" + uniqueIdentifier + fileExtension));
    File oldTempFile = new File(filePath);
    boolean deleted = newTempFile.delete();
    if (oldTempFile.renameTo(newTempFile)) {
      return Uri.fromFile(newTempFile);
    }
    return null;
  }

  public static boolean isTempFile(Context context, String path) {
    String tempPath = getScrapPath(context);
    return path.startsWith(tempPath) || path.startsWith("file://" + tempPath);
  }
}

<|start_filename|>libraries/SwipeBackLayoutLibary/src/main/java/me/imid/swipebacklayout/lib/app/SwipeBackActivity.java<|end_filename|>
package me.imid.swipebacklayout.lib.app;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import me.imid.swipebacklayout.lib.SwipeBackLayout;
import me.imid.swipebacklayout.lib.Utils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;

public class SwipeBackActivity extends AppCompatActivity implements SwipeBackActivityBase {
  private SwipeBackActivityHelper mHelper;

  @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mHelper = new SwipeBackActivityHelper(this);
    mHelper.onActivityCreate();
    mHelper.getSwipeBackLayout().setSensitivity(this, 0.5f);
  }

  @Override protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);
    mHelper.onPostCreate();
  }

  @Override public View findViewById(int id) {
    View v = super.findViewById(id);
    if (v == null && mHelper != null) return mHelper.findViewById(id);
    return v;
  }

  @Override public SwipeBackLayout getSwipeBackLayout() {
    return mHelper.getSwipeBackLayout();
  }

  @Override public void setSwipeBackEnable(boolean enable) {
    getSwipeBackLayout().setEnableGesture(enable);
  }

  @Override public void scrollToFinishActivity() {
    Utils.convertActivityToTranslucent(this);
    getSwipeBackLayout().scrollToFinishActivity();
  }

  @Override public void onStart() {
    EventBus.getDefault().register(this);
    super.onStart();
  }

  @Override public void onStop() {
    EventBus.getDefault().unregister(this);
    super.onStop();
  }

  @Subscribe public void onEvent(Object event) {
  }

  protected boolean isStickyAvailable() {
    return false;
  }
}


<|start_filename|>libraries/CommLib/src/com/nicodelee/utils/WidgetController.java<|end_filename|>
package com.nicodelee.utils;

import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;

/**
 * Created by NocodeLee on 16/1/5.
 * Email：<EMAIL>
 */
/*
 * 获取、设置控件信息
 */
public class WidgetController {

  /*
   * 获取控件宽
   */
  public static int getWidth(View view) {
    int w = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
    int h = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
    view.measure(w, h);
    return (view.getMeasuredWidth());
  }

  /*
   * 获取控件高
   */
  public static int getHeight(View view) {
    int w = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
    int h = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
    view.measure(w, h);
    return (view.getMeasuredHeight());
  }

  /*
   * 设置控件所在的位置X，并且不改变宽高，
   * X为绝对位置，此时Y可能归0
   */
  public static void setLayoutX(View view, int x) {
    ViewGroup.MarginLayoutParams margin = new ViewGroup.MarginLayoutParams(view.getLayoutParams());
    margin.setMargins(x, margin.topMargin, x + margin.width, margin.bottomMargin);
    RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(margin);
    view.setLayoutParams(layoutParams);
  }

  /*
   * 设置控件所在的位置Y，并且不改变宽高，
   * Y为绝对位置，此时X可能归0
   */
  public static void setLayoutY(View view, int y) {
    ViewGroup.MarginLayoutParams margin = new ViewGroup.MarginLayoutParams(view.getLayoutParams());
    margin.setMargins(margin.leftMargin, y, margin.rightMargin, y + margin.height);
    RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(margin);
    view.setLayoutParams(layoutParams);
  }

  /*
   * 设置控件所在的位置YY，并且不改变宽高，
   * XY为绝对位置
   */
  public static void setLayout(View view, int x, int y) {
    ViewGroup.MarginLayoutParams margin = new ViewGroup.MarginLayoutParams(view.getLayoutParams());
    margin.setMargins(x, y, x + margin.width, y + margin.height);
    RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(margin);
    view.setLayoutParams(layoutParams);
  }
}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/ui/camara/FilterAdapter.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.camara;

import android.content.Context;
import android.graphics.Bitmap;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.nicodelee.beautyarticle.base.R;
import java.util.List;
import jp.co.cyberagent.android.gpuimage.GPUImageFilter;
import jp.co.cyberagent.android.gpuimage.GPUImageView;

public class FilterAdapter extends BaseAdapter {

    List<FilterEffect> filterUris;
    Context mContext;
    private Bitmap background;

    private int        selectFilter = 0;

    public void setSelectFilter(int selectFilter) {
        this.selectFilter = selectFilter;
    }

    public int getSelectFilter() {
        return selectFilter;
    }

    public FilterAdapter(Context context, List<FilterEffect> effects, Bitmap backgroud) {
        filterUris = effects;
        mContext = context;
        this.background = backgroud;
    }

    @Override
    public int getCount() {
        return filterUris.size();
    }

    @Override
    public Object getItem(int position) {
        return filterUris.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        EffectHolder holder = null;
        if (convertView == null) {
            LayoutInflater layoutInflater = LayoutInflater.from(mContext);
            convertView = layoutInflater.inflate(R.layout.item_bottom_filter, null);
            holder = new EffectHolder();
            holder.filteredImg = (GPUImageView) convertView.findViewById(R.id.small_filter);
            holder.filterName = (TextView) convertView.findViewById(R.id.filter_name);
            convertView.setTag(holder);
        } else {
            holder = (EffectHolder) convertView.getTag();
        }

        final FilterEffect effect = (FilterEffect) getItem(position);

        holder.filteredImg.setImage(background);
        holder.filterName.setText(effect.getTitle());
        //if (!effect.isOri() && effect.getType() != null) {
        GPUImageFilter filter = GPUImageFilterTools.createFilterForType(mContext, effect.getType());
        holder.filteredImg.setFilter(filter);

        return convertView;
    }

    class EffectHolder {
        GPUImageView filteredImg;
        TextView filterName;
    }

}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/ui/camara/FilterEffect.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.camara;

public class FilterEffect {

    private String title;
    private GPUImageFilterTools.FilterType type;
    private int        degree;

    public FilterEffect(String title, GPUImageFilterTools.FilterType type, int degree) {
        this.type = type;
        this.degree = degree;
        this.title = title;
    }


    public GPUImageFilterTools.FilterType getType() {
        return type;
    }

    public String getTitle() {
        return title;
    }

    public int getDegree() {
        return degree;
    }

}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/internal/di/components/AppComponent.java<|end_filename|>
package com.nicodelee.beautyarticle.internal.di.components;

import android.content.Context;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.app.BaseFragment;
import com.nicodelee.beautyarticle.internal.di.modules.ApplicationModule;
import com.nicodelee.beautyarticle.app.BaseAct;
import com.nicodelee.beautyarticle.navigation.Navigator;
import com.nicodelee.beautyarticle.ui.view.fragment.ActicleListFragment;
import com.nicodelee.beautyarticle.ui.view.activity.MainAct;
import dagger.Component;
import javax.inject.Singleton;

/**
 * Created by Nicodelee on 15/9/2.
 */
@Singleton @Component(modules = ApplicationModule.class) public interface AppComponent {
  //void inject(MainAct mainAct);
  //void inject(BaseAct baseAct);
  //void inject(BaseFragment baseFragment);
  void inject(APP app);

  //void inject(ActicleListFragment acticleListFragment);

  //Navigator navigator();
  Context context();
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/activity/MainBase.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.activity;

import android.support.design.widget.NavigationView;
import android.support.design.widget.TabLayout;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.widget.Toolbar;
import android.view.KeyEvent;

import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.BaseAct;
import com.nicodelee.beautyarticle.utils.IsExit;

import butterknife.Bind;

/**
 * Created by alee on 2015/7/4.
 */
public abstract class MainBase extends BaseAct {
  @Bind(R.id.toolbar) protected Toolbar toolbar;
  @Bind(R.id.drawer_layout) protected DrawerLayout mDrawerLayout;
  @Bind(R.id.nav_view) protected NavigationView navigationView;
  @Bind(R.id.viewpager) protected ViewPager viewPager;
  @Bind(R.id.tabs) protected TabLayout tabLayout;

  // 按返回退出App
  private IsExit exit = new IsExit();

  @Override public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
      pressAgainExit();
      return true;
    }
    return super.onKeyDown(keyCode, event);
  }

  private void pressAgainExit() {
    if (exit.isExit()) {
      finish();
    } else {
      showInfo("喵，再按一次离开^~^");
      exit.doExitInThreeSecond();
    }
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/fragment/ArticleFragment.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.fragment;

import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.design.widget.CollapsingToolbarLayout;
import android.support.design.widget.CoordinatorLayout;
import android.support.v4.widget.NestedScrollView;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.webkit.JavascriptInterface;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ImageView;
import android.widget.TextView;
import butterknife.Bind;
import butterknife.OnClick;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.app.BaseSupportFragment;
import com.nicodelee.beautyarticle.mode.ActicleMod;
import com.nicodelee.beautyarticle.ui.presenter.ArticleDetailPresenter;
import com.nicodelee.beautyarticle.ui.view.activity.SharePreAct;
import com.nicodelee.beautyarticle.utils.Logger;
import com.nicodelee.beautyarticle.utils.ShareHelper;
import com.nicodelee.beautyarticle.utils.UILUtils;
import com.nicodelee.beautyarticle.viewhelper.LayoutToImage;
import com.nicodelee.beautyarticle.viewhelper.viewtoimage.ViewToImageHelper;
import com.nicodelee.utils.StringUtils;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import nucleus.factory.PresenterFactory;
import nucleus.factory.RequiresPresenter;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

@RequiresPresenter(ArticleDetailPresenter.class) public class ArticleFragment
    extends BaseSupportFragment<ArticleDetailPresenter> {

  @Bind(R.id.wv_acticle_detail) WebView webView;
  @Bind(R.id.tv_acticle_detail) TextView tvDetail;
  @Bind(R.id.ic_acticle) ImageView ivActicle;
  @Bind(R.id.collapsing_toolbar) CollapsingToolbarLayout collapsingToolbar;
  @Bind(R.id.toolbar) Toolbar toolbar;
  @Bind(R.id.main_content) CoordinatorLayout mainContent;
  @Bind(R.id.sc_acticle) NestedScrollView scAcrticle;

  public static final String EXTRA_POSITION = "ARTICLE_POSITION";
  private int position;
  private String srcHead;

  @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,
      Bundle savedInstanceState) {
    return inflater.inflate(R.layout.fragment_article, container, false);
  }

  @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    position = getArguments().getInt(EXTRA_POSITION);
    initView();
  }

  private void initView() {
    ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar);
    ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    initWebView();
  }

  @JavascriptInterface private void initWebView() {
    WebSettings webSettings = webView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setLoadWithOverviewMode(true);//自适应
    webSettings.setUseWideViewPort(true);
    webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
    webSettings.setAppCacheEnabled(true);
    webSettings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
    webView.addJavascriptInterface(this, "handler");
  }

  @Override public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
      case android.R.id.home:
        mActivity.finish();
        return true;
    }
    return super.onOptionsItemSelected(item);
  }

  @OnClick(R.id.fb_share) public void Click(final View view) {
    //share
    new ViewToImageHelper(new ViewToImageHelper.IViewToImage() {
      @Override
      public void saveToFile(File file, ViewToImageHelper.SaveImageAction saveImageAction) {
        HashMap map = new HashMap();
        map.put("haedpic", srcHead);
        map.put("textPic", "" + file.getAbsoluteFile());
        skipIntent(SharePreAct.class, map, false);
      }
    }).createImageAndShare(mActivity, ViewToImageHelper.SaveImageAction.SHARE, scAcrticle);
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
  public void onEvent(ArrayList<ActicleMod> eventList) {
    ActicleMod mod = eventList.get(position);
    collapsingToolbar.setTitle(mod.title + "");
    APP.getInstance().imageLoader.displayImage(mod.image, ivActicle, APP.options,
        new UILUtils.AnimateFirstDisplayListener());
    srcHead = mod.image;
    if (mod.type.equals("Markdown")) {
      webView.setVisibility(View.VISIBLE);
      tvDetail.setVisibility(View.GONE);
      setUpWebView(mod.details);
    } else if (mod.type.equals("text")) {
      webView.setVisibility(View.GONE);
      tvDetail.setVisibility(View.VISIBLE);
      tvDetail.setText(mod.details);
    }
  }

  private void setUpWebView(final String mdText) {
    if (webView == null) return;
    webView.setWebViewClient(new WebViewClient() {
      @Override public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
        loadMarkDown(mdText.replaceAll("(\\r|\\n|\\r\\n)+", "\\\\n"));
      }
    });
    webView.loadUrl("file:///android_asset/markdown.html");
  }

  private void loadMarkDown(String str) {
    if (webView!=null && !StringUtils.isBlank(str))
    webView.loadUrl("javascript:parseMarkdown(\"" + str + "\")");
  }

  @Override protected void injectorPresenter() {
    super.injectorPresenter();
    final PresenterFactory<ArticleDetailPresenter> superFactory = super.getPresenterFactory();
    setPresenterFactory(new PresenterFactory<ArticleDetailPresenter>() {
      @Override public ArticleDetailPresenter createPresenter() {
        ArticleDetailPresenter presenter = superFactory.createPresenter();
        getApiComponent().inject(presenter);
        return presenter;
      }
    });
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/fragment/FunFragment.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.fragment;

import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Typeface;
import android.net.Uri;
import android.os.Bundle;
import android.support.design.widget.TextInputLayout;
import android.support.v4.widget.NestedScrollView;
import android.support.v7.app.AlertDialog;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import butterknife.Bind;
import butterknife.BindString;
import butterknife.ButterKnife;
import butterknife.OnClick;
import com.github.clans.fab.FloatingActionMenu;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.app.BaseFragment;
import com.nicodelee.beautyarticle.bus.CropEvent;
import com.nicodelee.beautyarticle.ui.view.activity.CameraActivity;
import com.nicodelee.beautyarticle.ui.view.activity.CropAct;
import com.nicodelee.beautyarticle.ui.view.activity.FunTemplateAct;
import com.nicodelee.beautyarticle.utils.AndroidUtils;
import com.nicodelee.beautyarticle.utils.DevicesUtil;
import com.nicodelee.beautyarticle.utils.Logger;
import com.nicodelee.beautyarticle.utils.SharImageHelper;
import com.nicodelee.beautyarticle.utils.ShareHelper;
import com.nicodelee.beautyarticle.utils.TimeUtils;
import com.nicodelee.beautyarticle.viewhelper.LayoutToImage;
import com.nicodelee.beautyarticle.viewhelper.VerticalTextView;
import com.nicodelee.utils.StringUtils;
import com.nicodelee.utils.WeakHandler;
import com.nicodelee.view.CircularImage;
import com.nicodelee.view.CropImageView;
import java.io.File;
import java.util.ArrayList;
import me.nereo.multi_image_selector.MultiImageSelectorActivity;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import rx.Observable;
import rx.Subscriber;
import rx.android.schedulers.AndroidSchedulers;
import rx.functions.Action1;

import static butterknife.ButterKnife.findById;

public class FunFragment extends BaseFragment {

  @Bind(R.id.sc_fun) NestedScrollView scFun;
  @Bind(R.id.rl_fun) RelativeLayout rlFun;
  @Bind(R.id.tv_desc) VerticalTextView tvDesc;
  @Bind(R.id.tv_title) TextView tvTitle;
  @Bind(R.id.fl_menu) FloatingActionMenu famFun;
  @Bind(R.id.iv_fun) CircularImage ivFun;

  @BindString(R.string.article) String acticle;
  @BindString(R.string.acticle_title) String acticleTitle;
  @Bind(R.id.tv_day) TextView tvDay;
  @Bind(R.id.tv_month) TextView tvMonth;
  @Bind(R.id.tv_year) TextView tvYear;

  private LayoutToImage layoutToImage;
  private LayoutInflater inflater;

  private String title, desc;
  private static final int REQUEST_IMAGE = 2;
  private static final int REQUEST_PORTRAIT_FFC = 3;

  @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,
      Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_fun, container, false);
    ButterKnife.bind(this, view);
    init();
    return view;
  }

  private void init() {
    inflater = LayoutInflater.from(mActivity);
    famFun.setClosedOnTouchOutside(true);

    tvTitle.setText(acticleTitle);
    tvDesc.setTextSize(DevicesUtil.sp2px(mActivity, 16));
    tvDesc.setLineWidth(DevicesUtil.dip2px(mActivity, 24));
    Typeface face = Typeface.createFromAsset(mActivity.getAssets(), "fonts/fun_font.TTF");
    tvDesc.setTextColor(R.color.templage_title);
    tvDesc.setTypeface(face);
    tvDesc.setText(acticle);
    String date = TimeUtils.dateToCnDate(TimeUtils.getCurentData());

    tvDay.setText(TimeUtils.getDay(date));
    tvMonth.setText(TimeUtils.getMonth(date));
    tvYear.setText(TimeUtils.getYear(date));

    rlFun.setLayoutParams(
        new FrameLayout.LayoutParams(DevicesUtil.screenWidth, ViewGroup.LayoutParams.MATCH_PARENT));
    layoutToImage = new LayoutToImage(scFun);
  }

  @OnClick({ R.id.fb_share, R.id.fb_make, R.id.iv_fun, R.id.fb_more })
  public void Click(View view) {
    famFun.close(true);
    switch (view.getId()) {
      case R.id.fb_share:

        final SharImageHelper sharImageHelper = new SharImageHelper();
        Observable.create(new Observable.OnSubscribe<Bitmap>() {
          @Override public void call(Subscriber<? super Bitmap> subscriber) {
            Bitmap bitmap = layoutToImage.convertlayout();
            sharImageHelper.saveBitmap(bitmap, SharImageHelper.sharePicName);
            subscriber.onNext(bitmap);
            subscriber.onCompleted();
          }
        }).observeOn(AndroidSchedulers.mainThread()).subscribe(new Action1<Bitmap>() {
          @Override public void call(Bitmap bitmap) {
            ShareHelper.showUp(mActivity, sharImageHelper.getShareMod(bitmap));
          }
        });

        break;
      case R.id.fb_make:
        showEdDialig();
        break;
      case R.id.fb_more:
        skipIntent(FunTemplateAct.class, false);
        break;
      case R.id.iv_fun:
        showChiocePicDialog();
        break;
    }
  }

  private void showEdDialig() {
    View etView = inflater.inflate(R.layout.item_fun_et, null);
    final TextInputLayout inputTitle = findById(etView, R.id.textInput_title);
    final TextInputLayout inputDesc = findById(etView, R.id.textInput_desc);
    inputTitle.setHint("想个好标题");
    inputDesc.setHint("说说图片的故事");
    final EditText etTitle = inputTitle.getEditText();
    final EditText etDesc = inputDesc.getEditText();
    etTitle.setText(title);
    etDesc.setText(desc);

    new AlertDialog.Builder(mActivity).setMessage("发挥你聪明才智")
        .setView(etView)
        .setNegativeButton("放弃", new DialogInterface.OnClickListener() {
          @Override public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
          }
        })
        .setPositiveButton("发表", new DialogInterface.OnClickListener() {
          @Override public void onClick(DialogInterface dialog, int which) {

            title = etTitle.getText().toString().trim();
            desc = etDesc.getText().toString().trim();
            if (!TextUtils.isEmpty(title) && !TextUtils.isEmpty(desc)) {
              tvTitle.setText(title);
              tvDesc.setText(desc);
            }
            dialog.dismiss();
          }
        })
        .create()
        .show();

    new WeakHandler().postDelayed(new Runnable() {
      @Override public void run() {
        InputMethodManager inputManager = (InputMethodManager) etTitle.getContext()
            .getSystemService(Context.INPUT_METHOD_SERVICE);
        inputManager.showSoftInput(etTitle, 0);
      }
    }, 200);
  }

  private void showChiocePicDialog() {
    String[] items = new String[] { "拍照", "相册" };
    new AlertDialog.Builder(mActivity).setItems(items, new DialogInterface.OnClickListener() {
      @Override public void onClick(DialogInterface dialog, int which) {
        switch (which) {
          case 0:
            Intent i = new CameraActivity.IntentBuilder(getActivity()).skipConfirm()
                .facing(CameraActivity.Facing.BACK)
                .to(new File(AndroidUtils.IMAGE_CACHE_PATH, "nicodelee.jpg"))
                .debug()
                .updateMediaStore()
                .build();

            startActivityForResult(i, REQUEST_PORTRAIT_FFC);
            break;
          case 1:
            int selectedMode = MultiImageSelectorActivity.MODE_SINGLE;
            MultiImageSelectorActivity.startSelect(FunFragment.this, REQUEST_IMAGE, 1,
                selectedMode);
            break;
        }
      }
    }).create().show();
  }

  @Override public void onActivityResult(int requestCode, int resultCode, Intent data) {
    Logger.e(
        String.format("requestCode = %s, resultCode= %s, data= %s", requestCode, resultCode, data));
    if (resultCode != mActivity.RESULT_OK) return;

    CropEvent cropEvent = new CropEvent();
    cropEvent.setCropMode(CropImageView.CropMode.CIRCLE);
    if (requestCode == REQUEST_IMAGE) {
      ArrayList<String> mSelectPath =
          data.getStringArrayListExtra(MultiImageSelectorActivity.EXTRA_RESULT);
      cropEvent.setImagePath(mSelectPath.get(0));
      EventBus.getDefault().postSticky(cropEvent);
      skipIntent(CropAct.class, false);
    } else if (requestCode == REQUEST_PORTRAIT_FFC) {//拍照直接返回的
      String path = data.getData() + "";
      Logger.e(String.format("path = %s", path));
      if (!StringUtils.isEmpty(path)) {
        String url = path.substring(path.lastIndexOf("//") + 1);
        cropEvent.setImagePath(url);
        EventBus.getDefault().postSticky(cropEvent);
        skipIntent(CropAct.class, false);
      }
    }
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN) public void onEvent(Bitmap corpBitmap) {
    ivFun.setImageBitmap(corpBitmap);
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN) public void onEvent(Uri uri) {
    APP.getInstance().imageLoader.displayImage(uri + "", ivFun, APP.options);
  }

  @Override public void onDestroyView() {
    super.onDestroyView();
    ButterKnife.unbind(this);
  }
}


<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/CameraFragment.java<|end_filename|>
/**
 * Copyright (c) 2015 CommonsWare, LLC
 * <p/>
 * Licensed under the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License. You may obtain
 * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
 * <p/>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.commonsware.cwac.cam2;

import android.app.ActionBar;
import android.app.Fragment;
import android.content.Context;
import android.content.Intent;
import android.media.MediaScannerConnection;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.SystemClock;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.Toast;
import com.nicodelee.beautyarticle.ui.camara.PhotoProcessActivity;
import java.io.File;
import java.util.LinkedList;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

/**
 * Fragment for displaying a camera preview, with hooks to allow
 * you (or the user) to take a picture.
 */
public class CameraFragment extends Fragment {
  private static final String ARG_OUTPUT = "output";
  private static final String ARG_UPDATE_MEDIA_STORE = "updateMediaStore";
  private static final String ARG_IS_VIDEO = "isVideo";
  private static final String ARG_VIDEO_QUALITY = "quality";
  private static final String ARG_SIZE_LIMIT = "sizeLimit";
  private static final String ARG_DURATION_LIMIT = "durationLimit";
  private CameraController ctlr;
  private ViewGroup previewStack;
  private View progress;
  private boolean isVideoRecording = false;
  private boolean mirrorPreview = false;

  public static CameraFragment newPictureInstance(Uri output, boolean updateMediaStore) {
    CameraFragment f = new CameraFragment();
    Bundle args = new Bundle();

    args.putParcelable(ARG_OUTPUT, output);
    args.putBoolean(ARG_UPDATE_MEDIA_STORE, updateMediaStore);
    args.putBoolean(ARG_IS_VIDEO, false);
    f.setArguments(args);

    return (f);
  }

  public static CameraFragment newVideoInstance(Uri output, boolean updateMediaStore, int quality,
      int sizeLimit, int durationLimit) {
    CameraFragment f = new CameraFragment();
    Bundle args = new Bundle();

    args.putParcelable(ARG_OUTPUT, output);
    args.putBoolean(ARG_UPDATE_MEDIA_STORE, updateMediaStore);
    args.putBoolean(ARG_IS_VIDEO, true);
    args.putInt(ARG_VIDEO_QUALITY, quality);
    args.putInt(ARG_SIZE_LIMIT, sizeLimit);
    args.putInt(ARG_DURATION_LIMIT, durationLimit);
    f.setArguments(args);

    return (f);
  }

  /**
   * Standard fragment entry point.
   * @param savedInstanceState State of a previous instance
   */
  @Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setRetainInstance(true);
  }

  /**
   * Standard lifecycle method, passed along to the CameraController.
   */
  @Override public void onStart() {
    super.onStart();

    EventBus.getDefault().register(this);

    if (ctlr != null) {
      ctlr.start();
    }
  }

  @Override public void onHiddenChanged(boolean isHidden) {
    super.onHiddenChanged(isHidden);

    if (!isHidden) {
      ActionBar ab = getActivity().getActionBar();

      if (ab != null) {
        ab.setBackgroundDrawable(getActivity().getResources()
            .getDrawable(R.drawable.cwac_cam2_action_bar_bg_transparent));
        ab.setTitle("");

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
          ab.setDisplayHomeAsUpEnabled(false);
        } else {
          ab.setDisplayShowHomeEnabled(false);
          ab.setHomeButtonEnabled(false);
        }
      }
    }
  }

  /**
   * Standard lifecycle method, for when the fragment moves into
   * the stopped state. Passed along to the CameraController.
   */
  @Override public void onStop() {
    if (ctlr != null) {
      ctlr.stop();
    }

    EventBus.getDefault().unregister(this);

    super.onStop();
  }

  /**
   * Standard lifecycle method, for when the fragment is utterly,
   * ruthlessly destroyed. Passed along to the CameraController,
   * because why should the fragment have all the fun?
   */
  @Override public void onDestroy() {
    if (ctlr != null) {
      ctlr.destroy();
    }

    super.onDestroy();
  }

  /**
   * Standard callback method to create the UI managed by
   * this fragment.
   *
   * @param inflater Used to inflate layouts
   * @param container Parent of the fragment's UI (eventually)
   * @param savedInstanceState State of a previous instance
   * @return the UI being managed by this fragment
   */
  @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,
      Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.cwac_cam2_fragment, container, false);

    WindowManager wm = (WindowManager) getActivity().getSystemService(Context.WINDOW_SERVICE);
    int width = wm.getDefaultDisplay().getWidth();// 屏幕宽度

    previewStack = (ViewGroup) v.findViewById(R.id.cwac_cam2_preview_stack);
    ViewGroup.LayoutParams layout = previewStack.getLayoutParams();
    layout.height = width;
    layout.width = width;
    previewStack.setLayoutParams(layout);

    progress = v.findViewById(R.id.cwac_cam2_progress);
    v.findViewById(R.id.btnTakePhoto).setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View view) {
        performCameraAction();//拍照
      }
    });
    v.findViewById(R.id.btn_switch).setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View view) {
        progress.setVisibility(View.VISIBLE);
        ctlr.switchCamera();//前置后置摄像头切换
      }
    });
    v.findViewById(R.id.btn_close).setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View view) {
        getActivity().finish();
      }
    });
    v.findViewById(R.id.btn_chiose_pic).setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View view) {
        Toast.makeText(getActivity(), "从相册选图", Toast.LENGTH_SHORT).show();
      }
    });

    onHiddenChanged(false); // hack, since this does not get

    if (ctlr != null && ctlr.getNumberOfCameras() > 0) {
      prepController();
    }

    return (v);
  }

  /**
   * @return the CameraController this fragment delegates to
   */
  public CameraController getController() {
    return (ctlr);
  }

  /**
   * Establishes the controller that this fragment delegates to
   *
   * @param ctlr the controller that this fragment delegates to
   */
  public void setController(CameraController ctlr) {
    this.ctlr = ctlr;
  }

  /**
   * Indicates if we should mirror the preview or not. Defaults
   * to false.
   *
   * @param mirror true if we should horizontally mirror the
   * preview, false otherwise
   */
  public void setMirrorPreview(boolean mirror) {
    this.mirrorPreview = mirror;
  }

  @SuppressWarnings("unused")
  @Subscribe(sticky = false, threadMode = ThreadMode.MAIN)
  public void onEventMainThread(CameraController.ControllerReadyEvent event) {
    if (event.isEventForController(ctlr)) {
      prepController();
    }
  }

  @Subscribe(sticky = false, threadMode = ThreadMode.MAIN)
  @SuppressWarnings("unused") public void onEventMainThread(CameraEngine.OpenedEvent event) {
    if (event.exception == null) {
      progress.setVisibility(View.GONE);
    } else {
      getActivity().finish();
    }
  }

  @Subscribe(sticky = false, threadMode = ThreadMode.MAIN)
  @SuppressWarnings("unused") public void onEventMainThread(CameraEngine.VideoTakenEvent event) {
    if (event.exception == null) {
      if (getArguments().getBoolean(ARG_UPDATE_MEDIA_STORE, false)) {
        final Context app = getActivity().getApplicationContext();
        Uri output = getArguments().getParcelable(ARG_OUTPUT);
        final String path = output.getPath();

        new Thread() {
          @Override public void run() {
            SystemClock.sleep(2000);
            MediaScannerConnection.scanFile(app, new String[] { path },
                new String[] { "video/mp4" }, null);
          }
        }.start();
      }

      isVideoRecording = false;
    } else {
      getActivity().finish();
    }
  }

  protected void performCameraAction() {
    if (isVideo()) {
      recordVideo();
    } else {
      takePicture();
    }
  }

  private void takePicture() {
    Uri output = getArguments().getParcelable(ARG_OUTPUT);

    PictureTransaction.Builder b = new PictureTransaction.Builder();

    if (output != null) {
      b.toUri(getActivity(), output, getArguments().getBoolean(ARG_UPDATE_MEDIA_STORE, false));
    }

    //Toast.makeText(getActivity(), "拍照,uri="+output, Toast.LENGTH_SHORT).show();
    //Intent intent = new Intent(getActivity(),PhotoProcessActivity.class);
    //intent.putExtra("uri",output+"");
    //startActivity(intent);
    //getActivity().finish();//图片未生成

    ctlr.takePicture(b.build());
  }

  private void recordVideo() {
    if (isVideoRecording) {
      try {
        ctlr.stopVideoRecording();
      } catch (Exception e) {
        Log.e(getClass().getSimpleName(), "Exception stopping recording of video", e);
        // TODO: um, do something here
      }
    } else {
      try {
        VideoTransaction.Builder b = new VideoTransaction.Builder();
        Uri output = getArguments().getParcelable(ARG_OUTPUT);

        b.to(new File(output.getPath()))
            .quality(getArguments().getInt(ARG_VIDEO_QUALITY, 1))
            .sizeLimit(getArguments().getInt(ARG_SIZE_LIMIT, 0))
            .durationLimit(getArguments().getInt(ARG_DURATION_LIMIT, 0));

        ctlr.recordVideo(b.build());
        isVideoRecording = true;
      } catch (Exception e) {
        Log.e(getClass().getSimpleName(), "Exception recording video", e);
        // TODO: um, do something here
      }
    }
  }

  private boolean isVideo() {
    return (getArguments().getBoolean(ARG_IS_VIDEO, false));
  }

  private void prepController() {
    LinkedList<CameraView> cameraViews = new LinkedList<CameraView>();
    CameraView cv = (CameraView) previewStack.getChildAt(0);

    cv.setMirror(mirrorPreview);
    cameraViews.add(cv);

    for (int i = 1; i < ctlr.getNumberOfCameras(); i++) {
      cv = new CameraView(getActivity());
      cv.setVisibility(View.INVISIBLE);
      cv.setMirror(mirrorPreview);
      previewStack.addView(cv);
      cameraViews.add(cv);
    }

    ctlr.setCameraViews(cameraViews);
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/app/BaseRxPresenter.java<|end_filename|>
package com.nicodelee.beautyarticle.app;

import android.os.Bundle;
import nucleus.presenter.RxPresenter;

import static com.nicodelee.beautyarticle.utils.Logger.e;

public class BaseRxPresenter<View> extends RxPresenter<View> {

    @Override
    protected void onCreate(Bundle savedState) {
        super.onCreate(savedState);
        e("base onCreate");
        //Icepick.restoreInstanceState(this, savedState);
    }

    @Override
    protected void onSave(Bundle state) {
        super.onSave(state);
        e("base onSave");
        //Icepick.saveInstanceState(this, state);
    }
}

<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/utils/TimeUtils.java<|end_filename|>
package com.nicodelee.beautyarticle.utils;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * Created by Nicodelee on 15/8/3.
 */
public class TimeUtils {

  public static String getCurentData() {
    return new SimpleDateFormat("yyyy-MM-dd").format(new Date());
  }

  public static String getSimpleYear(){
    String[] dateStr = getCurentData().split("-");
    return dateStr[0];
  }

  public static String getSimpleMonth(){
    String[] dateStr = getCurentData().split("-");
    return dateStr[1];
  }

  public static String getEnMonth(){
    String sipMonth = getSimpleMonth();
    String result = "";
    if (sipMonth.equals("01")){
      return "Jan.";
    }else if (sipMonth.equals("02")){
      return "Feb.";
    }else if (sipMonth.equals("03")){
      return "Mar.";
    }else if (sipMonth.equals("04")){
      return "Apr.";
    }else if (sipMonth.equals("05")){
      return "May.";
    }else if (sipMonth.equals("06")){
      return "Jun.";
    }else if (sipMonth.equals("07")){
      return "Jul.";
    }else if (sipMonth.equals("08")){
      return "Aug.";
    }else if (sipMonth.equals("09")){
      return "Sept.";
    }else if (sipMonth.equals("10")){
      return "Oct.";
    }else if (sipMonth.equals("11")){
      return "Nov.";
    }else if (sipMonth.equals("12")){
      return "Dec.";
    }

    return result;
  }

  public static String getSimpleDay(){
    String[] dateStr = getCurentData().split("-");
    return dateStr[2];
  }

  public static String dtFormat(Date date, String dateFormat){
    return getFormat(dateFormat).format(date);
  }


  private static final DateFormat getFormat(String format) {
    return new SimpleDateFormat(format);
  }

  public static String dateToCnDate(String date) {
    String result = "";
    String[] cnDate = new String[] { "零", "一", "二", "三", "四", "五", "六", "七", "八", "九" };
    String ten = "十";
    String[] dateStr = date.split("-");
    for (int i = 0; i < dateStr.length; i++) {
      for (int j = 0; j < dateStr[i].length(); j++) {
        String charStr = dateStr[i];
        String str = String.valueOf(charStr.charAt(j));
        if (charStr.length() == 2) {
          if (charStr.equals("10")) {
            result += ten;
            break;
          } else {
            if (j == 0) {
              if (charStr.charAt(j) == '1') {
                result += ten;
              } else if (charStr.charAt(j) == '0') {
                result += "";
              } else {
                result += cnDate[Integer.parseInt(str)] + ten;
              }
            }
            if (j == 1) {
              if (charStr.charAt(j) == '0') {
                result += "";
              } else {
                result += cnDate[Integer.parseInt(str)];
              }
            }
          }
        } else {
          result += cnDate[Integer.parseInt(str)];
        }
      }
      if (i == 0) {
        result += "年 ";
        continue;
      }
      if (i == 1) {
        result += "月 ";
        continue;
      }
      if (i == 2) {
        result += "日 ";
      }
    }
    return result;
  }

  public static String getYear(String date){
    String[] dateStr = date.split(" ");
    if (dateStr.length>0) return dateStr[0];
    return "";
  }

  public static String getMonth(String date){
    String[] dateStr = date.split(" ");
    if (dateStr.length>1) return dateStr[1];
    return "";
  }

  public static String getDay(String date){
    String[] dateStr = date.split(" ");
    if (dateStr.length>2) return dateStr[2];
    return "";
  }
}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/ui/camara/PhotoProcessActivity.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.camara;

import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.nicodelee.beautyarticle.base.R;
import com.nicodelee.beautyarticle.utils.AndroidUtils;
import com.nicodelee.beautyarticle.utils.TimeUtils;
import com.nicodelee.utils.StringUtils;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.ImageSize;
import it.sephiroth.android.library.widget.AdapterView;
import it.sephiroth.android.library.widget.HListView;
import java.util.Date;
import java.util.List;
import jp.co.cyberagent.android.gpuimage.GPUImageFilter;
import jp.co.cyberagent.android.gpuimage.GPUImageView;
import org.greenrobot.eventbus.EventBus;

/**
 * Created by NocodeLee on 15/11/24.
 * Email：<EMAIL>
 * 照片编辑
 */
public class PhotoProcessActivity extends BaseAct implements View.OnClickListener {

  private GPUImageView gpuimage;
  private ImageView left;
  private ImageView right;
  private HListView bottomToolBar;
  private TextView title;

  //预览的小图
  private Bitmap smallImageBackgroud;
  protected static PhotoProcessActivity photoProcessActivity;

  @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_image_process);
    initView();
  }

  @Override public void onClick(View view) {
    int i = view.getId();
    if (i == R.id.left) {
      finish();
    } else if (i == R.id.right) {
      savePicture();
    }
  }

  private void initView() {
    photoProcessActivity = this;
    findView();
    setData();
  }

  private void findView() {
    title =  findViewById(this,R.id.title);
    left = findViewById(this,R.id.left);
    right =  findViewById(this,R.id.right);
    gpuimage = findViewById(this,R.id.gpuimage);
    bottomToolBar = findViewById(this,R.id.list_tools);

    title.setText("图片美化");
    left.setImageResource(R.drawable.ic_arrow_back_white_24dp);
    right.setImageResource(R.drawable.ic_arrow_forward_white_24dp);
    left.setOnClickListener(this);
    right.setOnClickListener(this);
  }

  private void setData() {
    Intent intent = getIntent();
    String uri = intent.getStringExtra("uri");
    if (!uri.contains("file://")) {
      uri = "file://" + uri;
    }
    if (!StringUtils.isEmpty(uri)) {
      ImageLoader imageLoader = ImageLoader.getInstance();
      WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
      int width = wm.getDefaultDisplay().getWidth();
      int heiht = wm.getDefaultDisplay().getWidth();
      Bitmap bitmap = imageLoader.loadImageSync(uri, new ImageSize(width, width));
      gpuimage.setImage(bitmap);
      smallImageBackgroud = imageLoader.loadImageSync(uri + "", new ImageSize(80, 80));
      RelativeLayout.LayoutParams rparams = new RelativeLayout.LayoutParams(heiht, width);
      gpuimage.setLayoutParams(rparams);
      initFilterToolBar();
    }
  }

  //保存图片
  private void savePicture() {
    loadingDialog.setMessage("图片保存中..");
    String picName = TimeUtils.dtFormat(new Date(), "yyyyMMddHHmmss");
    gpuimage.saveToPictures(AndroidUtils.PIC_CACHE_PATH, picName + ".jpg",
        new GPUImageView.OnPictureSavedListener() {
          @Override public void onPictureSaved(Uri uri) {
            EventBus.getDefault().post(uri);
            loadingDialog.dismiss();
            finish();
          }
        });
  }

  //初始化滤镜
  private void initFilterToolBar() {
    final List<FilterEffect> filters = EffectService.getInst().getLocalFilters();
    final FilterAdapter adapter =
        new FilterAdapter(PhotoProcessActivity.this, filters, smallImageBackgroud);
    bottomToolBar.setAdapter(adapter);
    bottomToolBar.setOnItemClickListener(new AdapterView.OnItemClickListener() {
      @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        if (adapter.getSelectFilter() != position) {
          adapter.setSelectFilter(position);
          GPUImageFilter filter = GPUImageFilterTools.createFilterForType(PhotoProcessActivity.this,
              filters.get(position).getType());
          gpuimage.setFilter(filter);
          GPUImageFilterTools.FilterAdjuster mFilterAdjuster =
              new GPUImageFilterTools.FilterAdjuster(filter);
          //可调节颜色的滤镜
          if (mFilterAdjuster.canAdjust()) {
            //mFilterAdjuster.adjust(100); 给可调节的滤镜选一个合适的值
          }
        }
      }
    });
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/OkHttpImageDownloader.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper;

import android.content.Context;
import com.nostra13.universalimageloader.core.assist.ContentLengthInputStream;
import com.nostra13.universalimageloader.core.download.BaseImageDownloader;
import java.io.IOException;
import java.io.InputStream;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.ResponseBody;

/**
 * @author <NAME> (nostra13[at]gmail[dot]com)
 * @author <NAME> (mr[dot]leolink[at]gmail[dot]com)
 */
public class OkHttpImageDownloader extends BaseImageDownloader {

	private OkHttpClient client;

	public OkHttpImageDownloader(Context context, OkHttpClient client) {
		super(context);
		this.client = client;
	}

	@Override
	protected InputStream getStreamFromNetwork(String imageUri, Object extra) throws IOException {
		Request request = new Request.Builder().url(imageUri).build();
		ResponseBody responseBody = client.newCall(request).execute().body();
		InputStream inputStream = responseBody.byteStream();
		int contentLength = (int) responseBody.contentLength();
		return new ContentLengthInputStream(inputStream, contentLength);
	}
}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/ui/camara/PhotoFiltersAdapter.java<|end_filename|>
//package com.nicodelee.beautyarticle.ui.camara;
//
//import android.content.Context;
//import android.graphics.Bitmap;
//import android.support.v7.widget.LinearLayoutManager;
//import android.support.v7.widget.RecyclerView;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.widget.LinearLayout;
//import android.widget.TextView;
//import com.nicodelee.utils.ListUtils;
//import java.util.HashSet;
//import java.util.List;
//import jp.co.cyberagent.android.gpuimage.GPUImageFilter;
//import jp.co.cyberagent.android.gpuimage.GPUImageView;
//
//public class PhotoFiltersAdapter
//    extends RecyclerView.Adapter<PhotoFiltersAdapter.PhotoFilterViewHolder> {
//
//  private Context context;
//
//  List<FilterEffect> filterUris;
//  private Bitmap background;
//  LinearLayoutManager mlinearLayoutManager;
//
//  public PhotoFiltersAdapter(Context context) {
//    this.context = context;
//  }
//
//  public PhotoFiltersAdapter(Context context, List<FilterEffect> effects, Bitmap backgroud,
//      LinearLayoutManager linearLayoutManager) {
//    filterUris = effects;
//    this.context = context;
//    this.background = backgroud;
//    mlinearLayoutManager = linearLayoutManager;
//  }
//
//  @Override public PhotoFilterViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//    final View view =
//        LayoutInflater.from(context).inflate(R.layout.item_bottom_filter, parent, false);
//    return new PhotoFilterViewHolder(view);
//  }
//
//  HashSet<Integer> recodeSet = new HashSet<>();
//
//  @Override public void onBindViewHolder(PhotoFilterViewHolder holder, final int position) {
//
//    final FilterEffect effect = filterUris.get(position);
//    if (!recodeSet.contains(position)){
//      recodeSet.add(position);
//      holder.filterName.setText(effect.getTitle());
//      holder.smallFilter.setImage(background);
//      GPUImageFilter filter = GPUImageFilterTools.createFilterForType(context, effect.getType());
//      holder.smallFilter.setFilter(filter);
//    }
//
//
//    holder.itemView.setOnClickListener(new View.OnClickListener() {
//      @Override public void onClick(View v) {
//        GPUImageFilter filter =
//            GPUImageFilterTools.createFilterForType(context, filterUris.get(position).getType());
//        PhotoProcessActivity.photoProcessActivity.gpuimage.setFilter(filter);
//      }
//    });
//  }
//
//  @Override public int getItemCount() {
//    return ListUtils.getSize(filterUris);
//  }
//
//  public static class PhotoFilterViewHolder extends RecyclerView.ViewHolder {
//    @Bind(R.id.small_filter) GPUImageView smallFilter;
//    @Bind(R.id.small_filter_container) LinearLayout smallFilterContainer;
//    @Bind(R.id.filter_name) TextView filterName;
//
//    public PhotoFilterViewHolder(View view) {
//      super(view);
//      //ButterKnife.bind(this, view);
//    }
//  }
//}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/internal/di/components/ApiComponent.java<|end_filename|>
package com.nicodelee.beautyarticle.internal.di.components;

import com.nicodelee.beautyarticle.internal.di.modules.ApiModule;
import com.nicodelee.beautyarticle.ui.presenter.ArticleDetailPresenter;
import com.nicodelee.beautyarticle.ui.presenter.ArticleListPresenter;
import com.nicodelee.beautyarticle.ui.view.fragment.ActicleListFragment;
import dagger.Component;
import javax.inject.Singleton;

/**
 * Created by NocodeLee on 15/12/8.
 * Email：<EMAIL>
 */
@Singleton @Component(modules = ApiModule.class) public interface ApiComponent {
  void inject(ActicleListFragment acticleListFragment);

  void inject(ArticleDetailPresenter articleDetailPresenter);

  void inject(ArticleListPresenter articleListPresenter);
}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/ui/camara/EffectService.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.camara;

import java.util.ArrayList;
import java.util.List;

public class EffectService {

  private static EffectService mInstance;

  public static EffectService getInst() {
    if (mInstance == null) {
      synchronized (EffectService.class) {
        if (mInstance == null) mInstance = new EffectService();
      }
    }
    return mInstance;
  }

  private EffectService() {
  }

  public List<FilterEffect> getLocalFilters() {
    List<FilterEffect> filters = new ArrayList<FilterEffect>();
    filters.add(new FilterEffect("原图", GPUImageFilterTools.FilterType.NORMAL, 0));

    filters.add(new FilterEffect("暧昧", GPUImageFilterTools.FilterType.ACV_AIMEI, 0));
    filters.add(new FilterEffect("淡蓝", GPUImageFilterTools.FilterType.ACV_DANLAN, 0));
    filters.add(new FilterEffect("蛋黄", GPUImageFilterTools.FilterType.ACV_DANHUANG, 0));
    filters.add(new FilterEffect("复古", GPUImageFilterTools.FilterType.ACV_FUGU, 0));
    filters.add(new FilterEffect("高冷", GPUImageFilterTools.FilterType.ACV_GAOLENG, 0));
    filters.add(new FilterEffect("怀旧", GPUImageFilterTools.FilterType.ACV_HUAIJIU, 0));
    filters.add(new FilterEffect("胶片", GPUImageFilterTools.FilterType.ACV_JIAOPIAN, 0));
    filters.add(new FilterEffect("可爱", GPUImageFilterTools.FilterType.ACV_KEAI, 0));
    filters.add(new FilterEffect("落寞", GPUImageFilterTools.FilterType.ACV_LOMO, 0));
    filters.add(new FilterEffect("加强", GPUImageFilterTools.FilterType.ACV_MORENJIAQIANG, 0));
    filters.add(new FilterEffect("暖心", GPUImageFilterTools.FilterType.ACV_NUANXIN, 0));
    filters.add(new FilterEffect("清新", GPUImageFilterTools.FilterType.ACV_QINGXIN, 0));
    filters.add(new FilterEffect("日系", GPUImageFilterTools.FilterType.ACV_RIXI, 0));
    filters.add(new FilterEffect("温暖", GPUImageFilterTools.FilterType.ACV_WENNUAN, 0));
    filters.add(new FilterEffect("夕阳", GPUImageFilterTools.FilterType.ACV_02, 0));
    filters.add(new FilterEffect("回忆", GPUImageFilterTools.FilterType.ACV_06, 0));
    filters.add(new FilterEffect("初恋", GPUImageFilterTools.FilterType.ACV_17, 0));
    filters.add(new FilterEffect("诡秘", GPUImageFilterTools.FilterType.ACV_AQUA, 0));
    filters.add(new FilterEffect("暖阳", GPUImageFilterTools.FilterType.ACV_CROSSPROCESS, 0));
    filters.add(new FilterEffect("文艺", GPUImageFilterTools.FilterType.ACV_PURPLE_GREEN, 0));
    filters.add(new FilterEffect("1997", GPUImageFilterTools.FilterType.ACV_YELLO_RED, 0));
    filters.add(new FilterEffect("电影", GPUImageFilterTools.FilterType.CONTRAST, 0));
    filters.add(new FilterEffect("黑白", GPUImageFilterTools.FilterType.GRAYSCALE, 0));
    filters.add(new FilterEffect("胶片", GPUImageFilterTools.FilterType.DILATION, 0));
    filters.add(new FilterEffect("斑点", GPUImageFilterTools.FilterType.SHARPEN, 0));
    filters.add(new FilterEffect("记忆", GPUImageFilterTools.FilterType.SEPIA, 0));
    filters.add(new FilterEffect("秋色", GPUImageFilterTools.FilterType.MONOCHROME, 0));
    filters.add(new FilterEffect("留白", GPUImageFilterTools.FilterType.VIGNETTE, 0));
    filters.add(new FilterEffect("明亮", GPUImageFilterTools.FilterType.TONE_CURVE, 0));
    filters.add(new FilterEffect("老地方", GPUImageFilterTools.FilterType.LOOKUP_AMATORKA, 0));
    filters.add(new FilterEffect("模糊", GPUImageFilterTools.FilterType.GAUSSIAN_BLUR, 0));
    filters.add(new FilterEffect("涂抹", GPUImageFilterTools.FilterType.KUWAHARA, 0));
    filters.add(new FilterEffect("忘记", GPUImageFilterTools.FilterType.RGB_DILATION, 0));

    //filters.add(new FilterEffect("add", GPUImageFilterTools.FilterType.SOBEL_EDGE_DETECTION, 0));
    //filters.add(new FilterEffect("add", GPUImageFilterTools.FilterType.THREE_X_THREE_CONVOLUTION, 0));
    //filters.add(new FilterEffect("add", GPUImageFilterTools.FilterType.FILTER_GROUP, 0));
    //filters.add(new FilterEffect("add", GPUImageFilterTools.FilterType.EMBOSS, 0));

    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.POSTERIZE, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.GAMMA, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.BRIGHTNESS, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.INVERT, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.HUE, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.PIXELATION, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.SATURATION, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.EXPOSURE, 0));
    //filters.add(new FilterEffect("Line3", GPUImageFilterTools.FilterType.HIGHLIGHT_SHADOW, 0));

    //filters.add(new FilterEffect("Line4", GPUImageFilterTools.FilterType.OPACITY, 0));
    //filters.add(new FilterEffect("Line4", GPUImageFilterTools.FilterType.RGB, 0));
    //filters.add(new FilterEffect("Line4", GPUImageFilterTools.FilterType.WHITE_BALANCE, 0));
    //filters.add(new FilterEffect("Line4", GPUImageFilterTools.FilterType.BLEND_COLOR_BURN, 0));

    // BLEND_COLOR_DODGE, BLEND_DARKEN, BLEND_DIFFERENCE, BLEND_DISSOLVE, BLEND_EXCLUSION,
    //filters.add(new FilterEffect("Line5", GPUImageFilterTools.FilterType.BLEND_COLOR_DODGE, 0));
    //filters.add(new FilterEffect("Line5", GPUImageFilterTools.FilterType.BLEND_DARKEN, 0));
    //filters.add(new FilterEffect("Line5", GPUImageFilterTools.FilterType.BLEND_DIFFERENCE, 0));
    //filters.add(new FilterEffect("Line5", GPUImageFilterTools.FilterType.BLEND_DISSOLVE, 0));
    //filters.add(new FilterEffect("Line5", GPUImageFilterTools.FilterType.BLEND_EXCLUSION, 0));

    //BLEND_SOURCE_OVER, BLEND_HARD_LIGHT, BLEND_LIGHTEN, BLEND_ADD, BLEND_DIVIDE, BLEND_MULTIPLY,
    //filters.add(new FilterEffect("Line6", GPUImageFilterTools.FilterType.BLEND_SOURCE_OVER, 0));
    //filters.add(new FilterEffect("Line6", GPUImageFilterTools.FilterType.BLEND_HARD_LIGHT, 0));
    //filters.add(new FilterEffect("Line6", GPUImageFilterTools.FilterType.BLEND_LIGHTEN, 0));
    //filters.add(new FilterEffect("Line6", GPUImageFilterTools.FilterType.BLEND_ADD, 0));
    //filters.add(new FilterEffect("Line6", GPUImageFilterTools.FilterType.BLEND_DIVIDE, 0));
    //filters.add(new FilterEffect("Line6", GPUImageFilterTools.FilterType.BLEND_MULTIPLY, 0));

    //BLEND_OVERLAY, BLEND_SCREEN, BLEND_ALPHA, BLEND_COLOR, BLEND_HUE, BLEND_SATURATION, BLEND_LUMINOSITY,
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_OVERLAY, 0));
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_SCREEN, 0));
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_ALPHA, 0));
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_COLOR, 0));
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_HUE, 0));
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_SATURATION, 0));
    //filters.add(new FilterEffect("Line7", GPUImageFilterTools.FilterType.BLEND_LUMINOSITY, 0));

    //BLEND_LINEAR_BURN, BLEND_SOFT_LIGHT, BLEND_SUBTRACT, BLEND_CHROMA_KEY, BLEND_NORMAL, LOOKUP_AMATORKA,
    //filters.add(new FilterEffect("Line8", GPUImageFilterTools.FilterType.BLEND_LINEAR_BURN, 0));
    //filters.add(new FilterEffect("Line8", GPUImageFilterTools.FilterType.BLEND_SOFT_LIGHT, 0));
    //filters.add(new FilterEffect("Line8", GPUImageFilterTools.FilterType.BLEND_SUBTRACT, 0));
    //filters.add(new FilterEffect("Line8", GPUImageFilterTools.FilterType.BLEND_CHROMA_KEY, 0));
    //filters.add(new FilterEffect("Line8", GPUImageFilterTools.FilterType.BLEND_NORMAL, 0));

    // GAUSSIAN_BLUR, CROSSHATCH, BOX_BLUR, CGA_COLORSPACE, DILATION, KUWAHARA, RGB_DILATION, SKETCH, TOON,
    //filters.add(new FilterEffect("Line9", GPUImageFilterTools.FilterType.CROSSHATCH, 0));
    //filters.add(new FilterEffect("Line9", GPUImageFilterTools.FilterType.CGA_COLORSPACE, 0));
    //filters.add(new FilterEffect("Line9", GPUImageFilterTools.FilterType.SKETCH, 0));
    //filters.add(new FilterEffect("Line9", GPUImageFilterTools.FilterType.TOON, 0));
    //filters.add(new FilterEffect("Line9", GPUImageFilterTools.FilterType.BOX_BLUR, 0));

    //SMOOTH_TOON, BULGE_DISTORTION, GLASS_SPHERE, HAZE, LAPLACIAN, NON_MAXIMUM_SUPPRESSION,
    //filters.add(new FilterEffect("Line10", GPUImageFilterTools.FilterType.SMOOTH_TOON, 0));
    //filters.add(new FilterEffect("Line10", GPUImageFilterTools.FilterType.BULGE_DISTORTION, 0));
    //filters.add(new FilterEffect("Line10", GPUImageFilterTools.FilterType.GLASS_SPHERE, 0));
    //filters.add(new FilterEffect("Line10", GPUImageFilterTools.FilterType.HAZE, 0));
    //filters.add(new FilterEffect("Line10", GPUImageFilterTools.FilterType.LAPLACIAN, 0));
    //filters.add(new FilterEffect("Line10", GPUImageFilterTools.FilterType.NON_MAXIMUM_SUPPRESSION, 0));

    //SPHERE_REFRACTION, SWIRL, WEAK_PIXEL_INCLUSION, FALSE_COLOR, COLOR_BALANCE
    //filters.add(new FilterEffect("Line11", GPUImageFilterTools.FilterType.SPHERE_REFRACTION, 0));
    //filters.add(new FilterEffect("Line11", GPUImageFilterTools.FilterType.SWIRL, 0));
    //filters.add(new FilterEffect("Line11", GPUImageFilterTools.FilterType.WEAK_PIXEL_INCLUSION, 0));
    //filters.add(new FilterEffect("Line11", GPUImageFilterTools.FilterType.FALSE_COLOR, 0));
    //filters.add(new FilterEffect("Line11", GPUImageFilterTools.FilterType.COLOR_BALANCE, 0));

    return filters;
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/utils/SharImageHelper.java<|end_filename|>
package com.nicodelee.beautyarticle.utils;

import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;

import com.nicodelee.beautyarticle.mode.ShareMod;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;

/**
 * Created by Nicodelee on 15/8/1.
 */
public class SharImageHelper {
  private static String picName = TimeUtils.dtFormat(new Date(), "yyyyMMddHHmmss");
  public static String sharePicName = picName + "-beautyacticle.jpeg";

  public ShareMod getShareMod(Bitmap bitmap) {
    ShareMod shareMod = new ShareMod();
    String url = "http://fir.im/beautyacticle";
    shareMod.title = "分享最美";
    shareMod.text = "#最美文字#";
    shareMod.titleUrl = url;
    shareMod.imageUrl = AndroidUtils.IMAGE_CACHE_PATH + "/" + sharePicName;
    shareMod.url = url;
    shareMod.imageData = bitmap;
    return  shareMod;
  }

  public void share(String imgPath, String content, Context context) {
    File f = new File(imgPath);
    Uri uri = Uri.fromFile(f);
    Intent shareIntent = new Intent(Intent.ACTION_SEND);
    if (uri != null && imgPath != null && imgPath != "") {
      shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
      shareIntent.setType("image/jpeg");
      shareIntent.putExtra("sms_body", content);
    } else {
      shareIntent.setType("text/plain");
    }
    shareIntent.putExtra(Intent.EXTRA_TEXT, content);
    // 自定义选择框的标题
    context.startActivity(Intent.createChooser(shareIntent, "选择分享方式"));
    // 系统默认标题
    //        context.startActivity(shareIntent);
  }

  /** 保存方法 */
  public boolean saveBitmap(Bitmap bitmap, String picName) {
    File f = new File(AndroidUtils.IMAGE_CACHE_PATH, picName);
    if (f.exists()) {
      f.delete();
    }
    try {
      FileOutputStream out = new FileOutputStream(f);
      bitmap.compress(Bitmap.CompressFormat.JPEG, 40, out);
      out.flush();
      out.close();
      return true;
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    return false;
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/utils/ShareHelper.java<|end_filename|>
package com.nicodelee.beautyarticle.utils;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AlertDialog;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.mode.ShareMod;
import com.nicodelee.beautyarticle.viewhelper.ShareButton;

import java.util.HashMap;

import cn.sharesdk.framework.Platform;
import cn.sharesdk.framework.PlatformActionListener;
import cn.sharesdk.framework.ShareSDK;
import cn.sharesdk.sina.weibo.SinaWeibo;
import cn.sharesdk.tencent.qq.QQ;
import cn.sharesdk.tencent.qzone.QZone;
import cn.sharesdk.wechat.friends.Wechat;
import cn.sharesdk.wechat.moments.WechatMoments;

/**
 * see:http://wiki.mob.com/%E4%B8%8D%E5%90%8C%E5%B9%B3%E5%8F%B0%E5%88%86%E4%BA%AB%E5%86%85%E5%AE%B9%E7%9A%84%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E/
 */

public class ShareHelper {

  private static void shareAction(Context context, AlertDialog dialog) {
    dialog.dismiss();
    Toast.makeText(context, context.getString(R.string.share_tip), Toast.LENGTH_SHORT).show();
  }

  public static void showUp(final Context context, final ShareMod shareMod) {
    ShareSDK.initSDK(context);

    View v = LayoutInflater.from(context).inflate(R.layout.layout_share, null, false);
    final AlertDialog dialog = new AlertDialog.Builder(context).setView(v).create();
    dialog.show();
    ShareButton weibo = (ShareButton) v.findViewById(R.id.action_share_weibo);
    ShareButton wechat = (ShareButton) v.findViewById(R.id.action_share_wechat);
    ShareButton wechatTimeline = (ShareButton) v.findViewById(R.id.action_share_wechat_timeline);
    ShareButton qq = (ShareButton) v.findViewById(R.id.action_share_qq);
    ShareButton link = (ShareButton) v.findViewById(R.id.action_share_this);
    ShareButton qzone = (ShareButton) v.findViewById(R.id.action_share_qzone);

    final TextView cancel = (TextView) v.findViewById(R.id.cancel);

    final Handler showMsg = new Handler(new Handler.Callback() {
      @Override public boolean handleMessage(Message msg) {
        Toast.makeText(context, msg.obj.toString(), Toast.LENGTH_SHORT).show();
        return true;
      }
    });

    final PlatformActionListener platformActionListener = new PlatformActionListener() {
      @Override public void onComplete(Platform platform, int i,
          HashMap<String, Object> stringObjectHashMap) {
        Message msg = Message.obtain(showMsg);
        msg.obj = context.getString(R.string.share_success);
        msg.sendToTarget();
        Logger.e("share onComplete");
      }

      @Override public void onError(Platform platform, int i, Throwable throwable) {
        Logger.e("@@@" + throwable.getMessage() + "," + platform.getName()+ "," +throwable.toString());
        Message msg = Message.obtain(showMsg);
        msg.obj = context.getString(R.string.share_error);
        msg.sendToTarget();
      }

      @Override public void onCancel(Platform platform, int i) {
        Message msg = Message.obtain(showMsg);
        msg.obj = context.getString(R.string.share_cancel);
        msg.sendToTarget();
        Logger.e("share onCancel");
      }
    };

    weibo.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        SinaWeibo.ShareParams sp = new SinaWeibo.ShareParams();
        Platform pf = ShareSDK.getPlatform(context, SinaWeibo.NAME);
        sp.setText(shareMod.text);
        //sp.setUrl(shareMod.url);
        //Logger.e("imageData:"+shareMod.imageUrl);
        sp.setImageData(shareMod.imageData);
        sp.setImagePath(shareMod.imageUrl);
        //sp.setShareType(Platform.SHARE_IMAGE);
        pf.setPlatformActionListener(platformActionListener);
        pf.share(sp);
        shareAction(context, dialog);
      }
    });

    wechat.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        Platform plat = ShareSDK.getPlatform(context, Wechat.NAME);
        Wechat.ShareParams sp = new Wechat.ShareParams();
        sp.setTitle(shareMod.title);
        sp.setText(shareMod.text);
        sp.setImageUrl(shareMod.imageUrl);
        sp.setImageData(shareMod.imageData);
        sp.setImagePath(shareMod.imageUrl);
        sp.setUrl(shareMod.url);
        sp.setShareType(Platform.SHARE_IMAGE);
        plat.setPlatformActionListener(platformActionListener);
        plat.share(sp);
        shareAction(context, dialog);
      }
    });

    wechatTimeline.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        Platform plat = ShareSDK.getPlatform(context, WechatMoments.NAME);
        WechatMoments.ShareParams sp = new WechatMoments.ShareParams();
        //sp.title = shareMod.title;
        //sp.text = shareMod.text;
        //sp.imageUrl = shareMod.imageUrl;
        //sp.url = shareMod.url;
        //sp.imageData = shareMod.imageData;
        sp.setTitle(shareMod.title);
        sp.setText(shareMod.text);
        sp.setImageUrl(shareMod.imageUrl);
        sp.setImageData(shareMod.imageData);
        sp.setImagePath(shareMod.imageUrl);
        sp.setUrl(shareMod.url);
        sp.setShareType(Platform.SHARE_IMAGE);
        plat.setPlatformActionListener(platformActionListener);
        plat.share(sp);
        shareAction(context, dialog);
      }
    });

    qq.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        Platform plat = ShareSDK.getPlatform(context, QQ.NAME);
        QQ.ShareParams sp = new QQ.ShareParams();
        sp.setTitle(shareMod.title);
        sp.setText(shareMod.text);
        sp.setTitleUrl(shareMod.titleUrl);
        //sp.setImageData(shareMod.imageData);
        sp.setImagePath(shareMod.imageUrl);
        sp.setImageUrl(shareMod.imageUrl);
        sp.setShareType(QQ.SHARE_IMAGE);
        plat.setPlatformActionListener(platformActionListener);
        plat.share(sp);
        shareAction(context, dialog);
      }
    });

    qzone.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        Platform plat = ShareSDK.getPlatform(context, QZone.NAME);
        QZone.ShareParams sp = new QZone.ShareParams();
        sp.setTitle(shareMod.title);
        sp.setText(shareMod.text);
        sp.setTitleUrl(shareMod.titleUrl);
        //sp.setImageData(shareMod.imageData);
        sp.setImageUrl(shareMod.imageUrl);
        sp.setImagePath(shareMod.imageUrl);
        sp.setShareType(QZone.SHARE_IMAGE);
        plat.setPlatformActionListener(platformActionListener);
        plat.share(sp);
        shareAction(context, dialog);
      }
    });

    link.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        new SharImageHelper().share(shareMod.imageUrl, "分享", context);
        dialog.dismiss();
      }
    });

    cancel.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        dialog.dismiss();
      }
    });
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/internal/di/modules/ApplicationModule.java<|end_filename|>
package com.nicodelee.beautyarticle.internal.di.modules;

import android.content.Context;
import com.nicodelee.beautyarticle.api.BeautyApi;
import com.nicodelee.beautyarticle.api.RetrofitHelper;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.navigation.Navigator;
import dagger.Module;
import dagger.Provides;
import javax.inject.Singleton;

/**
 * Created by Nicodelee on 15/9/2.
 */
@Module public class ApplicationModule {
  private final APP mapp;

  public ApplicationModule(APP app) {
    this.mapp = app;
  }

  @Provides @Singleton Navigator provideNavigator() {
    return new Navigator();
  }

  @Provides @Singleton Context provideAppLicationContext() {
    return this.mapp;
  }

  //@Provides @Singleton BeautyApi provideBeautyApi() {
  //  return new RetrofitHelper().getBeautyApi();
  //}
}


<|start_filename|>libraries/CommLib/src/com/nicodelee/view/ui/UIImageView.java<|end_filename|>
/*
 * The MIT License (MIT)
 *
 * Copyright (c) 2015 drakeet (http://drakeet.me)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
package com.nicodelee.view.ui;

import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.ImageView;
import com.nicodelee.R;

/**
 * Created by drakeet on 3/27/15.
 */
public class UIImageView extends ImageView {

    private int WIDTH;
    private int HEIGHT;
    private int PAINT_ALPHA = 48;

    private int mPressedColor;
    private Paint mPaint;
    private int mShapeType;
    private int mRadius;

    public UIImageView(Context context) {
        super(context);
    }

    public UIImageView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context, attrs);
    }

    public UIImageView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init(context, attrs);
    }

    private void init(final Context context, final AttributeSet attrs) {
        if (isInEditMode())
            return;
        final TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.UIButton);
        mPressedColor = typedArray.getColor(
            R.styleable.UIButton_color_pressed, getResources().getColor(R.color.color_pressed));
        PAINT_ALPHA = typedArray.getInteger(R.styleable.UIButton_alpha_pressed, PAINT_ALPHA);
        mShapeType = typedArray.getInt(R.styleable.UIButton_shape_type, 1);
        mRadius = typedArray.getDimensionPixelSize(
            R.styleable.UIButton_uiradius, getResources().getDimensionPixelSize(R.dimen.ui_radius));
        typedArray.recycle();
        mPaint = new Paint();
        mPaint.setStyle(Paint.Style.FILL);
        mPaint.setColor(mPressedColor);
        this.setWillNotDraw(false);
        mPaint.setAlpha(0);
        mPaint.setAntiAlias(true);
        this.setDrawingCacheEnabled(true);
        this.setClickable(true);
    }

    @Override
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        super.onSizeChanged(w, h, oldw, oldh);
        WIDTH = w;
        HEIGHT = h;
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        if (mPaint == null) return;
        if (mShapeType == 0) {
            canvas.drawCircle(WIDTH/2, HEIGHT/2, WIDTH/2.1038f, mPaint);
        } else {
            RectF rectF = new RectF();
            rectF.set(0, 0, WIDTH, HEIGHT);
            canvas.drawRoundRect(rectF, mRadius, mRadius, mPaint);
        }
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:
                mPaint.setAlpha(PAINT_ALPHA);
                invalidate();
                break;
            case MotionEvent.ACTION_CANCEL:
            case MotionEvent.ACTION_UP:
                mPaint.setAlpha(0);
                invalidate();
                break;
        }
        return super.onTouchEvent(event);
    }

}


<|start_filename|>beautyarticle-base/src/main/java/com/nicodelee/beautyarticle/ui/camara/BaseAct.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.camara;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import com.nicodelee.view.LoadingDialog;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import uk.co.chrisjenx.calligraphy.CalligraphyContextWrapper;

public abstract class BaseAct extends AppCompatActivity {

  public LoadingDialog loadingDialog;
  public Intent intent;

  @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    intent = getIntent();
    loadingDialog = new LoadingDialog(this);
  }

  @Override protected void attachBaseContext(Context newBase) {
    super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
  }

  public <T> T findViewById(View v, int id) {
    return (T) v.findViewById(id);
  }

  public <T> T findViewById(Activity activity, int id) {
    return (T) activity.findViewById(id);
  }

  @Override public void onStart() {
    EventBus.getDefault().register(this);
    super.onStart();
  }

  @Override public void onStop() {
    EventBus.getDefault().unregister(this);
    super.onStop();
  }

  @Subscribe
  public void onEvent(Object event) {
  }

  protected boolean isStickyAvailable() {
    return false;
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/utils/BitmapHelper.java<|end_filename|>
package com.nicodelee.beautyarticle.utils;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.lang.ref.SoftReference;
import java.util.HashMap;
import java.util.Map;

/**
 * Created by Nicodelee on 15/9/6.
 */
public class BitmapHelper {

  /**
   * see:
   * http://developer.android.com/intl/zh-cn/training/displaying-bitmaps/load-bitmap.html
   * http://stackoverflow.com/questions/26465281/outofmemoryerror-in-bitmapfactory-decodefile
   */
  public Bitmap getBitmapByPath(String filePath) {
    try {
      BitmapFactory.Options options = new BitmapFactory.Options();
      options.inJustDecodeBounds = true;
      BitmapFactory.decodeStream(new FileInputStream(new File(filePath)), null, options);
      final int REQUIRED_WIDTH = 750;
      final int REQUIRED_HIGHT = 1000;
      int scale = 1;
      while (options.outWidth / scale / 2 >= REQUIRED_WIDTH && options.outHeight / scale / 2 >= REQUIRED_HIGHT)
        scale *= 2;

      BitmapFactory.Options o2 = new BitmapFactory.Options();
      o2.inSampleSize = scale;
      return BitmapFactory.decodeStream(new FileInputStream(new File(filePath)), null, o2);
    } catch (FileNotFoundException e) {
    }
    return null;
  }

}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/internal/di/modules/ActivityModule.java<|end_filename|>
package com.nicodelee.beautyarticle.internal.di.modules;

import android.app.Activity;
import com.nicodelee.beautyarticle.internal.di.PerActivity;
import dagger.Module;
import dagger.Provides;

/**
 * Created by Nicodelee on 15/9/2.
 */
@Module
public class ActivityModule {
  private final Activity activity;

  public ActivityModule(Activity activity) {
    this.activity = activity;
  }

  @Provides @PerActivity Activity activity() {
    return this.activity;
  }

}



<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/adapter/MainRecyclerViewAdapter.java<|end_filename|>
package com.nicodelee.beautyarticle.adapter;

import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.support.v7.widget.RecyclerView;
import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import butterknife.Bind;
import butterknife.ButterKnife;
import com.daimajia.numberprogressbar.NumberProgressBar;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.mode.ActicleMod;
import com.nicodelee.beautyarticle.ui.view.activity.ArticleAct;
import com.nicodelee.beautyarticle.utils.DevicesUtil;
import com.nicodelee.utils.ListUtils;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;
import com.nostra13.universalimageloader.core.listener.ImageLoadingListener;
import com.nostra13.universalimageloader.core.listener.ImageLoadingProgressListener;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import org.greenrobot.eventbus.EventBus;
import rx.Observable;
import rx.Observer;
import rx.Subscriber;
import rx.android.schedulers.AndroidSchedulers;

/**
 * Created by alee on 2015/7/4.
 */
public class MainRecyclerViewAdapter
    extends RecyclerView.Adapter<MainRecyclerViewAdapter.ViewHolder> {

  private List<ActicleMod> mylist;

  public static class ViewHolder extends RecyclerView.ViewHolder {

    @Bind(R.id.main_title) TextView tvName;
    @Bind(R.id.main_desc) TextView tvDesc;
    @Bind(R.id.main_ic) ImageView ivIcon;
    @Bind(R.id.rl_msg) RelativeLayout rlMsg;
    @Bind(R.id.number_progress_bar) NumberProgressBar progressBar;
    public final View mView;

    public ViewHolder(View view) {
      super(view);
      mView = view;
      ButterKnife.bind(this, view);
    }
  }

  public MainRecyclerViewAdapter(Context context, List<ActicleMod> items) {
    context.getTheme().resolveAttribute(R.attr.selectableItemBackground, new TypedValue(), true);
    mylist = items;
  }

  @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_main, parent, false);

    return new ViewHolder(view);
  }

  @Override public void onBindViewHolder(final ViewHolder holder, final int position) {

    RelativeLayout.LayoutParams params =
        (RelativeLayout.LayoutParams) holder.ivIcon.getLayoutParams();
    params.width = DevicesUtil.screenWidth;
    params.height = DevicesUtil.screenWidth;
    holder.ivIcon.setLayoutParams(params);

    final ActicleMod mod = mylist.get(position);

    holder.tvName.setText(mod.title);
    holder.tvDesc.setText(mod.descriptions);

    Observable.create(new Observable.OnSubscribe<Bitmap>() {
      @Override public void call(final Subscriber<? super Bitmap> subscriber) {
        final List<String> displayedImages = Collections.synchronizedList(new LinkedList<String>());
        APP.getInstance().imageLoader.displayImage(mod.image, holder.ivIcon, APP.options,
            new ImageLoadingListener() {
              @Override public void onLoadingStarted(String imageUri, View view) {
                holder.progressBar.setProgress(0);
                holder.progressBar.setVisibility(View.VISIBLE);
              }

              @Override
              public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
                subscriber.onError(failReason.getCause());
                holder.progressBar.setVisibility(View.GONE);
              }

              @Override
              public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
                subscriber.onNext(loadedImage);
                subscriber.onCompleted();
                holder.progressBar.setVisibility(View.GONE);
                if (loadedImage != null) {
                  ImageView imageView = (ImageView) view;
                  boolean firstDisplay = !displayedImages.contains(imageUri);
                  if (firstDisplay) {
                    FadeInBitmapDisplayer.animate(imageView, 500);//动画效果
                    displayedImages.add(imageUri);
                  }
                }
              }

              @Override public void onLoadingCancelled(String imageUri, View view) {
                subscriber.onError(new Throwable("Image loading cancelled"));
              }
            }, new ImageLoadingProgressListener() {
              @Override
              public void onProgressUpdate(String imageUri, View view, int current, int total) {
                holder.progressBar.setProgress(Math.round(100.0f * current / total));
              }
            });
      }
    }).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer<Bitmap>() {
      @Override public void onCompleted() {
      }

      @Override public void onError(Throwable e) {
      }

      @Override public void onNext(Bitmap bitmap) {
        holder.ivIcon.setImageBitmap(bitmap);
      }
    });

    holder.mView.setOnClickListener(new View.OnClickListener() {
      @Override public void onClick(View v) {
        Context context = v.getContext();
        Intent intent = new Intent(context, ArticleAct.class);
        EventBus.getDefault().postSticky(position);
        EventBus.getDefault().postSticky(mylist);
        context.startActivity(intent);
      }
    });
  }

  @Override public int getItemCount() {
    return ListUtils.getSize(mylist);
  }

  public void clearData() {
    int size = this.mylist.size();
    if (size > 0) {
      for (int i = 0; i < size; i++) {
        this.mylist.remove(0);
      }

      this.notifyItemRangeRemoved(0, size);
    }
  }

  public void setDatas(ArrayList<ActicleMod> acticleMods) {
    if (acticleMods == null) {
      acticleMods = new ArrayList<ActicleMod>();
    } else {
      this.mylist = acticleMods;
    }
    notifyDataSetChanged();
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/api/BeautyApi.java<|end_filename|>
package com.nicodelee.beautyarticle.api;

import com.nicodelee.beautyarticle.mode.ActicleMod;
import java.util.ArrayList;
import retrofit2.http.GET;
import retrofit2.http.Path;
import rx.Observable;

/**
 * Created by Nicodelee on 15/8/25.
 */
public interface BeautyApi {
  //@GET("/acticle/{page}/{id}") public void getActicle(@Path("page") int page, @Path("id") int id,
  //    Callback<ArrayList<ActicleMod>> response);
  @GET("/acticle/{page}/{id}") Observable<ArrayList<ActicleMod>> getActicle(@Path("page") int page,
      @Path("id") int id);
}


<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/plugin/OrientationPlugin.java<|end_filename|>
/**
 * Copyright (c) 2015 CommonsWare, LLC
 * <p/>
 * Licensed under the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License. You may obtain
 * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
 * <p/>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.commonsware.cwac.cam2.plugin;

import android.annotation.TargetApi;
import android.content.Context;
import android.hardware.Camera;
import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CaptureRequest;
import android.media.MediaRecorder;
import android.os.Build;
import android.view.OrientationEventListener;
import android.view.Surface;
import android.view.WindowManager;
import com.commonsware.cwac.cam2.CameraConfigurator;
import com.commonsware.cwac.cam2.CameraEngine;
import com.commonsware.cwac.cam2.CameraPlugin;
import com.commonsware.cwac.cam2.CameraSession;
import com.commonsware.cwac.cam2.ClassicCameraConfigurator;
import com.commonsware.cwac.cam2.SimpleCameraTwoConfigurator;
import com.commonsware.cwac.cam2.SimpleClassicCameraConfigurator;
import com.commonsware.cwac.cam2.VideoTransaction;
import org.greenrobot.eventbus.EventBus;

/**
 * Plugin for managing orientation effects on the previews
 * and pictures.
 */
public class OrientationPlugin implements CameraPlugin {
  private final Context ctxt;
  private OrientationEventListener orientationEventListener;
  private int lastOrientation=OrientationEventListener.ORIENTATION_UNKNOWN;

  public OrientationPlugin(Context ctxt) {
    this.ctxt=ctxt.getApplicationContext();

    orientationEventListener=new OrientationEventListener(ctxt) {
      @Override
      public void onOrientationChanged(int orientation) {
        if (lastOrientation!=orientation) {
          EventBus
            .getDefault()
            .post(new CameraEngine.OrientationChangedEvent());
        }

        lastOrientation=orientation;
      }
    };

    if (orientationEventListener.canDetectOrientation()) {
      orientationEventListener.enable();
    }
    else {
      orientationEventListener.disable();
      orientationEventListener=null;
    }
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public <T extends CameraConfigurator> T buildConfigurator(Class<T> type) {
    if (type == ClassicCameraConfigurator.class) {
      return (type.cast(new Classic()));
    }

    return(type.cast(new Two()));
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public void validate(CameraSession session) {
    // no validation required
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public void destroy() {
    if (orientationEventListener!=null) {
      orientationEventListener.disable();
      orientationEventListener=null;
    }
  }

  class Classic extends SimpleClassicCameraConfigurator {
    /**
     * {@inheritDoc}
     */
    @Override
    public Camera.Parameters configureStillCamera(
      Camera.CameraInfo info,
      Camera camera, Camera.Parameters params) {
      int displayOrientation=getDisplayOrientation(info, true);

      if ("samsung".equals(Build.MANUFACTURER) &&
        "sf2wifixx".equals(Build.PRODUCT)) {
        camera.setDisplayOrientation(0);
      }
      else if (displayOrientation==180) {
        camera.setDisplayOrientation(270);
      }
      else {
        camera.setDisplayOrientation(90);
      }

      if (params!=null) {
        int outputOrientation;

        if (info.facing==Camera.CameraInfo.CAMERA_FACING_FRONT) {
          outputOrientation=(360-displayOrientation)%360;
        }
        else {
          outputOrientation=displayOrientation;
        }

        params.setRotation(outputOrientation);
      }

      return(params);
    }

    @Override
    public void configureRecorder(int cameraId,
                                  VideoTransaction xact,
                                  MediaRecorder recorder) {
      Camera.CameraInfo info=new Camera.CameraInfo();
      Camera.getCameraInfo(cameraId, info);
      int displayOrientation=getDisplayOrientation(info, false);

      recorder.setOrientationHint(displayOrientation);
    }

    private int getDisplayOrientation(Camera.CameraInfo info,
                                      boolean isStillCapture) {
      WindowManager mgr=(WindowManager)ctxt.getSystemService(Context.WINDOW_SERVICE);
      int rotation=mgr.getDefaultDisplay().getRotation();
      int degrees=0;

      switch (rotation) {
        case Surface.ROTATION_0:
          degrees=0;
          break;
        case Surface.ROTATION_90:
          degrees=90;
          break;
        case Surface.ROTATION_180:
          degrees=180;
          break;
        case Surface.ROTATION_270:
          degrees=270;
          break;
      }

      int displayOrientation;

      if (info.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
        displayOrientation=(info.orientation + degrees) % 360;
        displayOrientation=(360 - displayOrientation) % 360;

        if (!isStillCapture && displayOrientation==90) {
          displayOrientation=270;
        }
      }
      else {
        displayOrientation=(info.orientation - degrees + 360) % 360;
      }

      return(displayOrientation);
    }
  }

  @TargetApi(Build.VERSION_CODES.LOLLIPOP)
  class Two extends SimpleCameraTwoConfigurator {
    /**
     * {@inheritDoc}
     */
    @Override
    public void addToCaptureRequest(CameraCharacteristics cc,
                                    boolean facingFront,
                                    CaptureRequest.Builder captureBuilder) {
      // based on https://developer.android.com/reference/android/hardware/camera2/CaptureRequest.html#JPEG_ORIENTATION

      int pictureOrientation=0;

      if (lastOrientation!=android.view.OrientationEventListener.ORIENTATION_UNKNOWN) {
        int sensorOrientation=cc.get(CameraCharacteristics.SENSOR_ORIENTATION);
        int deviceOrientation=(lastOrientation + 45) / 90 * 90;

        if (facingFront) {
          deviceOrientation = -deviceOrientation;
        }

        pictureOrientation=(sensorOrientation + deviceOrientation + 360) % 360;
      }

      captureBuilder.set(CaptureRequest.JPEG_ORIENTATION, pictureOrientation);
    }
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/viewtoimage/ViewToImageHelper.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper.viewtoimage;

import android.annotation.TargetApi;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.os.AsyncTask;
import android.os.Build;
import android.support.design.widget.CoordinatorLayout;
import android.support.v4.widget.NestedScrollView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.utils.Logger;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

import static android.view.ViewGroup.LayoutParams;

/**
 * Created by NocodeLee on 16/6/3.
 * Email：<EMAIL>
 */
public class ViewToImageHelper {

  public static final String SHARE_IMAGE_CACHE = "Beauty_Cache_";
  private final SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat("yyyyMMdd_HHmmss");
  private IViewToImage iViewToImage;
  private static int defQuality = 85;//图片压缩质量

  public ViewToImageHelper(IViewToImage iViewToImage) {
    this.iViewToImage = iViewToImage;
  }

  @TargetApi(Build.VERSION_CODES.CUPCAKE)
  public void createImageAndShare(final Activity context, final SaveImageAction action,
      final View compressView) {
    Runtime runtime = Runtime.getRuntime();
    final int viewWidth = compressView.getWidth();
    final int viewHeight;

    if (compressView instanceof CoordinatorLayout) {
      NestedScrollView scrollView =
          (NestedScrollView) ((CoordinatorLayout) compressView).getChildAt(1);
      viewHeight = scrollView.getChildAt(0).getHeight() + viewWidth;
    } else if (compressView instanceof NestedScrollView) {
      viewHeight = ((NestedScrollView) compressView).getChildAt(0).getHeight();
    } else {
      viewHeight = compressView.getHeight();
    }

    Logger.e("viewWidth" + viewWidth + ",viewHeight" + viewHeight);

    if (((long) (((compressView.getWidth() * compressView.getHeight()) * 4) + 20971520))
        > runtime.maxMemory() - runtime.totalMemory()) {
      //布局大小超过最大限制.
      Logger.e("布局大小超过最大限制");
    } else {
      new AsyncTask<Void, Void, File>() {
        protected void onPreExecute() {
        }

        protected File doInBackground(Void... params) {
          Bitmap contentBitmap =
              Bitmap.createBitmap(viewWidth, viewHeight, Bitmap.Config.ARGB_8888);
          final Canvas canvas = new Canvas(contentBitmap);
          canvas.save();
          File fileToShare;
          context.runOnUiThread(new Runnable() {
            @Override public void run() {
              compressView.draw(canvas);
            }
          });
          canvas.restore();
          IMAGE type = contentBitmap.getHeight() > 16000 ? IMAGE.JPEG : IMAGE.PNG;
          if (action == SaveImageAction.SAVELOCAL) {
            fileToShare = new File(ViewToImageUtils.getCacheFolderName(),
                "Beauty_" + mSimpleDateFormat.format(new Date()) + type.value);
          } else {
            fileToShare = TempFileProvider.getSharedImage(context,
                SHARE_IMAGE_CACHE + mSimpleDateFormat.format(new Date()) + type.value);
          }
          Bitmap.CompressFormat format =
              type == IMAGE.PNG ? Bitmap.CompressFormat.PNG : Bitmap.CompressFormat.JPEG;
          if (action == SaveImageAction.SHARE) {
            while (true) {
              defQuality -= 2;
              try {
                if (!ViewToImageUtils.isLarge5M(
                    compressBitmapToImage(contentBitmap, fileToShare, format, defQuality))) {
                  break;
                }
              } catch (Throwable throwable) {
                throwable.printStackTrace();
              }
              if (format == Bitmap.CompressFormat.PNG) {
                String path = fileToShare.getAbsolutePath();
                File file = new File(
                    path.subSequence(0, path.lastIndexOf(".")).toString() + IMAGE.JPEG.value);
                fileToShare.delete();
                fileToShare = file;
                format = Bitmap.CompressFormat.JPEG;
              }
              Logger.d("FileToShare: " + fileToShare.getAbsolutePath() + "  Quality:" + defQuality);
            }
          } else {
            try {
              compressBitmapToImage(contentBitmap, fileToShare, format, defQuality);
            } catch (Throwable throwable) {
              throwable.printStackTrace();
            }
          }
          contentBitmap.recycle();
          Logger.d("FileToShare: " + fileToShare.getAbsolutePath() + "  Quality:" + defQuality);
          canvas.setBitmap(null);
          System.gc();
          return fileToShare;
        }

        protected void onPostExecute(File result) {
          super.onPostExecute(result);
          //Logger.e("保存成功:" + result.getAbsolutePath());
          iViewToImage.saveToFile(result, action);
        }
      }.execute(new Void[0]);
    }
  }

  private File compressBitmapToImage(Bitmap contentBitmap, File fileToShare,
      Bitmap.CompressFormat format, int quality) throws Throwable {
    Exception e;
    Throwable th;
    FileOutputStream out = null;
    if (fileToShare != null) {
      try {
        FileOutputStream out2 = new FileOutputStream(fileToShare);
        try {
          contentBitmap.compress(format, quality, out2);
          out2.flush();
          out2.close();
          try {
            out2.close();
          } catch (IOException e2) {
            e2.printStackTrace();
            Logger.d("FileToShare:  compressBitmapToImage out error  " + e2.getLocalizedMessage());
            out = out2;
          }
        } catch (Exception e3) {
          e = e3;
          out = out2;
          try {
            e.printStackTrace();
            Logger.d("FileToShare:  compressBitmapToImage error  " + e.getLocalizedMessage());
            try {
              out.close();
            } catch (IOException e22) {
              e22.printStackTrace();
              Logger.d(
                  "FileToShare:  compressBitmapToImage out error  " + e22.getLocalizedMessage());
            }
            return fileToShare;
          } catch (Throwable th2) {
            th = th2;
            try {
              out.close();
            } catch (IOException e222) {
              e222.printStackTrace();
              Logger.d(
                  "FileToShare:  compressBitmapToImage out error  " + e222.getLocalizedMessage());
            }
            throw th;
          }
        } catch (Throwable th3) {
          th = th3;
          out = out2;
          out.close();
          throw th;
        }
      } catch (Exception e4) {
        e = e4;
        e.printStackTrace();
        Logger.d("FileToShare:  compressBitmapToImage error  " + e.getLocalizedMessage());
        if (out != null) {
          out.close();
        }
        return fileToShare;
      }
    }
    return fileToShare;
  }

  //文章内容需要添加配图后再分享
  public View addImageViewToLayout(LayoutInflater layoutInflater, String srcHead, String srcText) {
    Logger.e("srcHead=" + srcHead + ",srcText=" + srcText);
    View viewRoot = layoutInflater.inflate(R.layout.conver_to_picture, null, false);
    ImageView ivHead = (ImageView) viewRoot.findViewById(R.id.head_pic);
    ImageView ivText = (ImageView) viewRoot.findViewById(R.id.text_pic);
    APP.getInstance().imageLoader.displayImage(srcHead, ivHead, APP.options);
    APP.getInstance().imageLoader.displayImage(srcText, ivText, APP.options);
    ViewGroup viewGroup = (ViewGroup) viewRoot;
    viewGroup.removeAllViews();
    viewGroup.addView(ivHead);
    viewGroup.setLayoutParams(
        new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
    return viewGroup;
  }

  public enum SaveImageAction {
    SAVELOCAL,
    SHARE,
  }

  public enum IMAGE {
    PNG(".png"),
    JPEG(".jpeg");
    public String value;

    IMAGE(String value) {
      this.value = value;
    }
  }

  public interface IViewToImage {
    void saveToFile(File file, SaveImageAction saveImageAction);
  }
}


<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/CameraTwoConfigurator.java<|end_filename|>
/**
 * Copyright (c) 2015 CommonsWare, LLC
 * <p/>
 * Licensed under the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License. You may obtain
 * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
 * <p/>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.commonsware.cwac.cam2;

import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CaptureRequest;
import android.media.ImageReader;

/**
 * Camera configurator for the CameraTwoEngine, to be used as
 * part of a CameraPlugin for configuring camera behavior.
 */
public interface CameraTwoConfigurator extends CameraConfigurator {
  /**
   * @return an ImageReader to be used by the CameraTwoEngine,
   * or null if this configurator is not responsible for creating
   * the ImageReader
   */
  ImageReader buildImageReader();

  /**
   * Updates a CaptureRequest to reflect what the plugin needs.
   *
   * @param cc CameraCharacteristics for the camera being used
   * @param facingFront true if the camera is front-facing, false
   *                    otherwise
   * @param captureBuilder the builder for the request, to be
   *                       configured
   */
  void addToCaptureRequest(CameraCharacteristics cc,
                           boolean facingFront,
                           CaptureRequest.Builder captureBuilder);

  /**
   * Updates a preview CaptureRequest to reflect what the plugin needs.
   *
   * @param cc CameraCharacteristics for the camera being used
   * @param captureBuilder the builder for the request, to be
   *                       configured
   */
  void addToPreviewRequest(CameraCharacteristics cc,
                           CaptureRequest.Builder captureBuilder);
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/activity/FunTemplateAct.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.activity;

import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v7.app.ActionBar;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import butterknife.Bind;
import com.github.florent37.hollyviewpager.HollyViewPager;
import com.github.florent37.hollyviewpager.HollyViewPagerConfigurator;
import com.jaeger.library.StatusBarUtil;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.app.BaseSwiBackAct;
import com.nicodelee.beautyarticle.bus.TemplateMenuEvent;
import com.nicodelee.beautyarticle.ui.view.fragment.RectangleFragment;
import com.nicodelee.beautyarticle.ui.view.fragment.SquareFragment;
import com.nicodelee.beautyarticle.ui.view.fragment.VerticalFragment;
import com.nicodelee.beautyarticle.utils.Logger;
import com.nicodelee.beautyarticle.utils.SharImageHelper;
import com.nicodelee.beautyarticle.utils.ShareHelper;
import com.nicodelee.beautyarticle.viewhelper.viewtoimage.ViewToImageHelper;
import java.io.File;
import org.greenrobot.eventbus.EventBus;

/**
 * Created by Nicodelee on 15/9/25.
 */
public class FunTemplateAct extends BaseSwiBackAct {

  @Bind(R.id.vp_fun_template) HollyViewPager vpFun;
  @Bind(R.id.toolbar) protected Toolbar toolbar;
  private static int totalPage = 3;

  @Override protected int getLayoutResId() {
    return R.layout.act_fun_template;
  }

  @Override protected void initView() {
    setSupportActionBar(toolbar);
    final ActionBar ab = getSupportActionBar();
    if (ab != null) {
      ab.setDisplayHomeAsUpEnabled(true);
      ab.setTitle("卡片画廊");
    }

    int mColor = getResources().getColor(R.color.colorAccent);
    StatusBarUtil.setColor(this, mColor, 0);

    vpFun.getViewPager()
        .setPageMargin(getResources().getDimensionPixelOffset(R.dimen.viewpager_margin));
    vpFun.setConfigurator(new HollyViewPagerConfigurator() {
      @Override public float getHeightPercentForPage(int page) {
        return ((page + 4) % 10) / 10f;
      }
    });

    FunTemplateAdt funTemplateAdt = new FunTemplateAdt(getSupportFragmentManager());
    vpFun.setAdapter(funTemplateAdt);
    //vpFun.getViewPager().setPageTransformer(true, new TabletTransformer());
    vpFun.getViewPager().setOffscreenPageLimit(totalPage);
  }

  class FunTemplateAdt extends FragmentPagerAdapter {

    public FunTemplateAdt(FragmentManager fm) {
      super(fm);
    }

    @Override public Fragment getItem(int position) {
      switch (position) {
        case 0:
          return SquareFragment.newInstance(position);
        case 1:
          return RectangleFragment.newInstance(position);
        case 2:
          return VerticalFragment.newInstance(position);
      }
      return null;
    }

    @Override public int getCount() {
      return totalPage;
    }

    @Override public CharSequence getPageTitle(int position) {
      switch (position) {
        case 0:
          return "简洁";
        case 1:
          return "方正";
        case 2:
          return "优雅";
      }
      return "TITLE " + position;
    }
  }

  @Override public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.menu_share, menu);
    return true;
  }

  @Override public boolean onOptionsItemSelected(MenuItem item) {
    int postion = vpFun.getViewPager().getCurrentItem();
    switch (item.getItemId()) {
      case android.R.id.home:
        finish();
        break;
      case R.id.menu_share:
        EventBus.getDefault()
            .postSticky(new TemplateMenuEvent(ViewToImageHelper.SaveImageAction.SHARE, postion));
        break;
      case R.id.menu_save:
        EventBus.getDefault()
            .postSticky(
                new TemplateMenuEvent(ViewToImageHelper.SaveImageAction.SAVELOCAL, postion));
        break;
    }
    return super.onOptionsItemSelected(item);
  }

  public void ShareAction(final Activity context, ViewToImageHelper.SaveImageAction saveImageAction,
      View tempalteView) {
    new ViewToImageHelper(new ViewToImageHelper.IViewToImage() {
      @Override
      public void saveToFile(File file, ViewToImageHelper.SaveImageAction saveImageAction) {
        switch (saveImageAction) {
          case SHARE:
            SharImageHelper sharImageHelper = new SharImageHelper();
            Bitmap bitmap =
                APP.getInstance().imageLoader.loadImageSync("file://" + file.getAbsolutePath());
            sharImageHelper.saveBitmap(bitmap, SharImageHelper.sharePicName);
            ShareHelper.showUp(context, sharImageHelper.getShareMod(bitmap));
            break;
          case SAVELOCAL:
            showToast("图片保存路径:" + file.getAbsolutePath());
            break;
        }
      }
    }).createImageAndShare(context, saveImageAction, tempalteView);
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/view/fragment/SquareFragment.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.view.fragment;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.widget.CardView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import com.github.florent37.hollyviewpager.HollyViewPagerBus;
import com.github.ksoichiro.android.observablescrollview.ObservableScrollView;
import com.nicodelee.beautyarticle.R;
import com.nicodelee.beautyarticle.app.APP;
import com.nicodelee.beautyarticle.bus.CropEvent;
import com.nicodelee.beautyarticle.bus.TemplateMenuEvent;
import com.nicodelee.beautyarticle.ui.view.activity.CropAct;
import com.nicodelee.beautyarticle.ui.view.activity.FunTemplateAct;
import com.nicodelee.beautyarticle.utils.DevicesUtil;
import com.nicodelee.beautyarticle.utils.TimeUtils;
import com.nicodelee.view.CropImageView;
import java.util.ArrayList;
import me.nereo.multi_image_selector.MultiImageSelectorActivity;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

/**
 * Created by Nicodelee on 15/9/25.
 */
public class SquareFragment extends TemplateBase {

  public static final String EXTRA_POSITION = "ARTICLE_POSITION";
  private static final int REQUEST_IMAGE = 2;
  @Bind(R.id.iv_fun) ImageView ivFun;
  @Bind(R.id.tv_month) TextView tvMonth;
  @Bind(R.id.tv_year) TextView tvYear;
  @Bind(R.id.scrollView) ObservableScrollView scrollView;
  @Bind(R.id.card_temp) CardView cardTemp;
  @Bind(R.id.rl_square) RelativeLayout rlSquare;
  @Bind(R.id.ll_root) LinearLayout llRoot;
  private int position;

  @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,
      Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_square, container, false);
    ButterKnife.bind(this, view);
    position = getArguments().getInt(EXTRA_POSITION);
    HollyViewPagerBus.registerScrollView(getActivity(), scrollView);
    initView();
    return view;
  }

  public static SquareFragment newInstance(int sposition) {
    Bundle args = new Bundle();
    args.putInt(EXTRA_POSITION, sposition);
    SquareFragment fragment = new SquareFragment();
    fragment.setArguments(args);
    return fragment;
  }

  private void initView() {
    inflater = LayoutInflater.from(mActivity);
    RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) ivFun.getLayoutParams();
    int width = DevicesUtil.screenWidth - DevicesUtil.dip2px(mActivity, 64.f);
    params.width = width;
    params.height = width;
    ivFun.setLayoutParams(params);

    llRoot.setPadding(DevicesUtil.dip2px(mActivity, 32.f), 0, 0, 0);

    tvMonth.setText(TimeUtils.getEnMonth() + " " + TimeUtils.getSimpleDay());
    tvYear.setText(TimeUtils.getSimpleYear());
  }

  @OnClick({ R.id.iv_fun, R.id.tv_fun }) public void Click(View view) {
    switch (view.getId()) {
      case R.id.tv_fun:
        showEdDialig(true);
        break;
      case R.id.iv_fun:
        showChiocePicDialog();
        break;
    }
  }

  @Override public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == Activity.RESULT_OK && requestCode == REQUEST_IMAGE) {
      ArrayList<String> mSelectPath =
          data.getStringArrayListExtra(MultiImageSelectorActivity.EXTRA_RESULT);
      CropEvent cropEvent = new CropEvent();
      cropEvent.setCropMode(CropImageView.CropMode.RATIO_1_1);
      cropEvent.setImagePath(mSelectPath.get(0));
      EventBus.getDefault().postSticky(cropEvent);
      skipIntent(CropAct.class, false);
    }
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN) public void onEvent(Bitmap corpBitmap) {
    ivFun.setImageBitmap(corpBitmap);
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN) public void onEvent(Uri uri) {//拍照后编辑
    APP.getInstance().imageLoader.displayImage(uri + "", ivFun, APP.options);
  }

  @Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
  public void MenuAction(TemplateMenuEvent templateMenuEvent) {
    if (position == templateMenuEvent.getPosition()) {
      new FunTemplateAct().ShareAction(mActivity, templateMenuEvent.getSaveImageAction(), cardTemp);
      removeStickEven();
    }
  }

}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/internal/di/components/ActivityComponent.java<|end_filename|>
package com.nicodelee.beautyarticle.internal.di.components;

import android.app.Activity;
import com.nicodelee.beautyarticle.internal.di.PerActivity;
import com.nicodelee.beautyarticle.internal.di.modules.ActivityModule;
import dagger.Component;

/**
 * Created by Nicodelee on 15/9/2.
 */
@PerActivity
@Component(dependencies = AppComponent.class,modules = ActivityModule.class)
public interface ActivityComponent {
  Activity activity();
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/viewhelper/LayoutToImage.java<|end_filename|>
package com.nicodelee.beautyarticle.viewhelper;

import android.graphics.Bitmap;
import android.view.View;
import com.nicodelee.beautyarticle.utils.Logger;

public class LayoutToImage {
  private View view;

  public LayoutToImage(View view) {
    this.view = view;
  }

  public Bitmap convertlayout() {

    view.setDrawingCacheEnabled(true);
    view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
        View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
    view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight() + 60);
    view.buildDrawingCache(true);
    Logger.e("with:"+view.getMeasuredWidth()+",heitht:"+view.getMeasuredHeight());
    return Bitmap.createBitmap(view.getDrawingCache());
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/ui/presenter/ArticleListPresenter.java<|end_filename|>
package com.nicodelee.beautyarticle.ui.presenter;

import android.os.Bundle;
import com.nicodelee.beautyarticle.api.BeautyApi;
import com.nicodelee.beautyarticle.app.BaseRxPresenter;
import com.nicodelee.beautyarticle.mode.ActicleMod;
import com.nicodelee.beautyarticle.mode.ActicleMod$Table;
import com.nicodelee.beautyarticle.ui.view.fragment.ActicleListFragment;
import com.nicodelee.beautyarticle.utils.Logger;
import com.raizlabs.android.dbflow.sql.language.Select;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import javax.inject.Inject;
import rx.Observable;
import rx.Subscriber;
import rx.android.schedulers.AndroidSchedulers;
import rx.functions.Action2;
import rx.functions.Func0;
import rx.schedulers.Schedulers;

/**
 * Created by NocodeLee on 15/12/8.
 * Email：<EMAIL>
 */
public class ArticleListPresenter extends BaseRxPresenter<ActicleListFragment> {

  private static final int REQUEST_ARCICLE_ID = 1;
  private static final int REQUEST_ARCICLE_LOCAL_ID = 2;

  public static final String WEB = "web";
  public static final String LOCAL = "local";

  //BeautyApi mbeautyApi;
  @Inject BeautyApi mbeautyApi;

  private int page;
  private int id;
  private boolean isSetDate;

  private static final HashMap<String, Integer> requests = new HashMap<>();

  static {
    requests.put(WEB, REQUEST_ARCICLE_ID);
    requests.put(LOCAL, REQUEST_ARCICLE_LOCAL_ID);
  }

  @Override protected void onCreate(Bundle savedState) {
    super.onCreate(savedState);

    Action2<ActicleListFragment, ArrayList<ActicleMod>> onNext =
        new Action2<ActicleListFragment, ArrayList<ActicleMod>>() {
          @Override public void call(ActicleListFragment acticleListFragment,
              ArrayList<ActicleMod> acticleMods) {
            if (!isSetDate) acticleListFragment.onChangeItems(acticleMods, page);
          }
        };

    Action2<ActicleListFragment, Throwable> onError =
        new Action2<ActicleListFragment, Throwable>() {
          @Override public void call(ActicleListFragment acticleListFragment, Throwable throwable) {
            acticleListFragment.onNetworkError(throwable, page);
          }
        };

    restartableLatestCache(REQUEST_ARCICLE_ID, new Func0<Observable<ArrayList<ActicleMod>>>() {
      @Override public Observable<ArrayList<ActicleMod>> call() {
        return mbeautyApi.getActicle(page, id)
            .subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread());
      }
    }, onNext, onError);

    restartableLatestCache(REQUEST_ARCICLE_LOCAL_ID, new Func0<Observable<List<ActicleMod>>>() {
      @Override public Observable<List<ActicleMod>> call() {
        return Observable.create(new Observable.OnSubscribe<List<ActicleMod>>() {
          @Override public void call(Subscriber<? super List<ActicleMod>> subscriber) {
            List<ActicleMod> acticleMods =
                new Select().from(ActicleMod.class).orderBy(false, ActicleMod$Table.ID).queryList();
            subscriber.onNext(acticleMods);
            subscriber.onCompleted();
          }
        }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread());
      }
    }, new Action2<ActicleListFragment, List<ActicleMod>>() {
      @Override
      public void call(ActicleListFragment acticleListFragment, List<ActicleMod> acticleMods) {
        Logger.e("REQUEST_ARCICLE_LOCAL_ID");
        if (!isSetDate) acticleListFragment.setLocalData(acticleMods);
      }
    });
  }

  @Override protected void onSave(Bundle state) {
    super.onSave(state);
    isSetDate = true;
    Logger.e("save in presenter" + "state=" + state.toString());
  }

  //TODO 出来返回会调用上次请求的Next方法
  @Override protected void onTakeView(ActicleListFragment acticleListFragment) {
    super.onTakeView(acticleListFragment);
    Logger.e("onTakeView");
  }

  public void getData(String type, int page, int id) {
    this.page = page;
    this.id = id;
    start(requests.get(type));
  }
}


<|start_filename|>app/src/main/java/com/nicodelee/beautyarticle/internal/di/modules/ApiModule.java<|end_filename|>
package com.nicodelee.beautyarticle.internal.di.modules;

import com.nicodelee.beautyarticle.api.BeautyApi;
import com.nicodelee.beautyarticle.api.RetrofitHelper;
import dagger.Module;
import dagger.Provides;
import javax.inject.Singleton;

/**
 * Created by NocodeLee on 15/12/8.
 * Email：<EMAIL>
 */
@Module(includes = ApplicationModule.class) public class ApiModule {

  @Provides @Singleton BeautyApi provideBeautyApi() {
    return new RetrofitHelper().getBeautyApi();
  }
}


<|start_filename|>libraries/cam2/src/main/java/com/commonsware/cwac/cam2/VideoRecorderActivity.java<|end_filename|>
/***
 Copyright (c) 2015 CommonsWare, LLC

 Licensed under the Apache License, Version 2.0 (the "License"); you may
 not use this file except in compliance with the License. You may obtain
 a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 */

package com.commonsware.cwac.cam2;

import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.provider.MediaStore;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

/**
 * Activity for recording video. Analogue of CameraActivity.
 * Supports the same protocol, in terms of extras and return data,\
 * as does ACTION_VIDEO_CAPTURE.
 */
public class VideoRecorderActivity extends AbstractCameraActivity {
  private static final String[] PERMS={
    Manifest.permission.CAMERA,
    Manifest.permission.WRITE_EXTERNAL_STORAGE,
    Manifest.permission.RECORD_AUDIO};

  @Override
  protected String[] getNeededPermissions() {
    return(PERMS);
  }

  @Override
  protected boolean needsOverlay() {
    return(false);
  }

  @Override
  protected boolean needsActionBar() {
    return(false);
  }

  @Override
  protected boolean isVideo() {
    return(true);
  }

  @Override
  protected void configEngine(CameraEngine engine) {
    // no-op
  }

  @Override
  protected CameraFragment buildFragment() {
    return(CameraFragment.newVideoInstance(getOutputUri(),
        getIntent().getBooleanExtra(EXTRA_UPDATE_MEDIA_STORE, false),
        getIntent().getIntExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1),
        getIntent().getIntExtra(MediaStore.EXTRA_SIZE_LIMIT, 0),
        getIntent().getIntExtra(MediaStore.EXTRA_DURATION_LIMIT, 0)));
  }

  @SuppressWarnings("unused")
  @Subscribe(sticky = false, threadMode = ThreadMode.MAIN)
  public void onEventMainThread(CameraEngine.VideoTakenEvent event) {
    if (event.getVideoTransaction()==null) {
      setResult(RESULT_CANCELED);
      finish();
      // TODO: something with the exception
    }
    else {
      findViewById(android.R.id.content).post(new Runnable() {
        @Override
        public void run() {
         setResult(RESULT_OK, new Intent().setData(getOutputUri()));
         finish();
        }
      });
    }
  }

  /**
   * Class to build an Intent used to start the VideoRecorderActivity.
   * Call setComponent() on the Intent if you are using your
   * own subclass of VideoRecorderActivity.
   */
  public static class IntentBuilder
    extends AbstractCameraActivity.IntentBuilder<IntentBuilder> {
    /**
     * Standard constructor. May throw a runtime exception
     * if the environment is not set up properly (see
     * validateEnvironment() on Utils).
     *
     * @param ctxt any Context will do
     */
    public IntentBuilder(Context ctxt) {
      super(ctxt, VideoRecorderActivity.class);
    }

    @Override
    public Intent build() {
      forceClassic();

      return(super.build());
    }

    @Override
    public IntentBuilder to(Uri output) {
      if (!"file".equals(output.getScheme())) {
        throw new IllegalArgumentException("must be a file:/// Uri");
      }

      return(super.to(output));
    }

    /**
     * Indicates the video quality to use for recording this
     * video. Matches EXTRA_VIDEO_QUALITY, except uses an enum
     * for type safety.
     *
     * @param q LOW or HIGH
     * @return the builder, for further configuration
     */
    public IntentBuilder quality(Quality q) {
      result.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, q.getValue());

      return(this);
    }

    /**
     * Sets the maximum size of the video file in bytes. Maps
     * to EXTRA_SIZE_LIMIT.
     *
     * @param limit maximum video size in bytes
     * @return
     */
    public IntentBuilder sizeLimit(int limit) {
      result.putExtra(MediaStore.EXTRA_SIZE_LIMIT, limit);

      return(this);
    }

    /**
     * Sets the maximum duration of the video file in milliseconds. Maps
     * to EXTRA_DURATION_LIMIT.
     *
     * @param limit maximum video length in milliseconds
     * @return
     */
    public IntentBuilder durationLimit(int limit) {
      result.putExtra(MediaStore.EXTRA_DURATION_LIMIT, limit);

      return(this);
    }
  }

  public enum Quality {
    LOW(0), HIGH(1);

    private final int value;

    private Quality(int value) {
      this.value=value;
    }

    int getValue() {
      return(value);
    }
  }
}
