button_buttonst - CSDN
精华内容
参与话题
  • button按钮样式

    万次阅读 2018-03-08 09:50:40
    在许多网站中都需要实用到按钮,一个好看实用的css按钮即可以给访问者以美感,又可以方便开发者。下面就是一个纯css按钮,需要的可以参考。css代码.div { display: inline-block; padding: .3em .5em;...

    在许多网站中都需要实用到按钮,一个好看实用的css按钮即可以给访问者以美感,又可以方便开发者。下面就是一个纯css按钮,需要的可以参考。

    css代码

    复制代码
    .div {
        display: inline-block;
        padding: .3em .5em;
        background-image: linear-gradient(#ddd, #bbb);
        border: 1px solid rgba(0,0,0,.2);
        border-radius: .3em;
        box-shadow: 0 1px white inset;
        text-align: center;
        text-shadow: 0 1px 1px black;
        color:white;
        font-weight: bold;
    }
    .div:active{
        box-shadow: .05em .1em .2em rgba(0,0,0,.6) inset;
        border-color: rgba(0,0,0,.3);
        background: #bbb;
    }
    复制代码

    html代码

    <div class="div">Button</div>

    其他几种按钮

    背景颜色

    background-image: linear-gradient(#f5c153, #ea920d);

    背景颜色

     background-image: linear-gradient(#8eb349, #5f7c22);

    背景颜色

    background-image: linear-gradient(#fbb2d0, #e779aa);
    展开全文
  • Button简介

    千次阅读 2018-08-20 14:03:41
    Button是如何工作的 Button的类型 普通按钮 粘性按钮 单选按钮及复选框 普通按钮的使用 使用复选框 标准复选框 图标复选框 单选按钮 标准单选按钮 图标单选按钮 Button是一个用户界面对象,在单击时向...

    Button是一个用户界面对象,在单击时向目标发送操作消息。

    本文介绍Cocoa提供的各种按钮的不同之处以及如何使用它们。

    Button是如何工作的

    Button遵循target-action设计模式,它是一个用户界面对象,在单击时向目标发送操作消息。关于此设计模式的更多信息,请查看 Concepts in Objective-C Programming中的Target-Action

    大多数按钮的工作是由NSButtonCell处理的,一旦NSButtonCell的视图被点击并捕获到鼠标按下的事件后,NSButtonCell的实例发送它的动作消息给目标对象,但是只要鼠标光标在Button cell内部并保持按下状态也可以持续发送动作消息。Button cell的按压状态可以通过多种高亮方式显示。比如,有边框的按钮单元格可以出现在屏幕上,或者在按下按钮单元格时,图像或标题可以更改为另一种形式。

    NSButtonCell对象必须使用NSControl子类的实例,如果你需要一个按钮,如push按钮,使用包含单个NSButtonCell实例的NSButton对象;如果需要一组相关的按钮,例如一组开关或radio按钮,则使用包含几个NSButtonCell实例的NSMatrix对象。

    NSButtonNSMatrix都提供了一个控制视图,然而,虽然NSMatrix要求您直接访问NSButtonCell对象,但是NSButton的大多数方法对于NSButtonCell中相同声明的方法是“隐藏”的,(也就是说,NSButton方法的执行会自动为你调用相应的NSButtonCell方法,无需关心NSButtonCell的存在。)唯一没有覆盖的NSButtonCell方法与用于显示快捷键的字体以及高亮或显示NSButton状态的特定方法有关(最后这些通常与NSButtonsetButtonType:方法一起设置)。

    Button的类型

    Button的类型决定了它的行为,当按压时如何高亮显示以及是否显示其状态,button的类型可以归纳为三类:

    • 普通按钮
    • 粘性按钮
    • 单选按钮及复选框

    通过setButtonType设置按钮类型。

    普通按钮

    这些按钮主要用于触发动作,因为他们不显示自己的状态。这类按钮在鼠标按下时改变他们的显示并且在鼠标抬起时返回他们原始的状态。

    • 要让NSButton控制按钮被按下的外观,使用NSMomentaryPushInButton(在Xib的按钮inspector中称为“Mementary Push”),当鼠标按下按钮时,按钮似乎是按进去的。

      这里有一个NSMomentaryPushInButton按钮的例子,带有NSRoundedBezelStyle风格的边框,在正常和按下时的外观:

      这是一个带有NSThickerSquareBezelStyle样式的NSMomentaryPushInButton按钮的例子。边框样式NSRegularSquareBezelStyleNSThickSquareBezelStyle类似。

    • 为了自己控制按钮的外观,使用NSMomentaryChangeButton(在Xib中称为“Momentary Change”)。当鼠标按钮按下时,它将显示为替换图片和标题,当鼠标释放后,它将显示为正常的图片和标题。如果没有设置替换图片或者按钮标题,它的外观不会有任何变换。

    粘性按钮

    此类按钮显示他们的状态,并且在按下后似乎会粘住。点击一次后,它将会保持按下状态直到下一次点击。

    • 要让NSButton控制按钮被按下的外观,使用NSPushOnPushOffButton(xib中称为“Push On/Push Off”)。按钮被按下后,按钮似乎是按进去的,再次点击后按钮弹起。弹出的外观用于关闭状态(NSOffState),而压入的外观用于打开状态和混合状态(NSOnStateNSMixedState)。这对于显示应用程序中某些内容的状态的按钮(例如,显示所选文本是否为黑体的按钮)非常有用。
    • 要控制按下按钮的外观,请使用NSToggleButton(在Interface Builder的按钮检查器中称为“切换”)。单击一次后,按钮会显示它的替代图像和标题。再次单击后,按钮会显示其正常的图像和标题。如果没有替代的图像或标题,按钮的外观不会改变。正常的图像和标题表示off状态(NSOffState),备用的图像和标题表示on状态和混合状态(NSOnState和NSMixedState)。这对于在两个动作(例如,停止和开始)之间切换的按钮非常有用。

    如果想要一个按钮显示所有三种状态的不同外观,必须自定义NSButton。

    单选按钮及复选框

    这些按钮显示应用程序中的状态,它们是NSToggleButton的特殊版本,具有系统定义的图片。

    • 要在两个选项中进行选择,请使用 NSSwitchButton按钮,它看起来像一个复选框。这种类型的按钮可以在Interface Builder中作为单独的选项板使用。
    • 要在两个以上的选项中进行选择,请使用NSRadioButton按钮矩阵。矩阵和单选按钮一起工作,以确保每次只打开一个按钮。这种类型的按钮可以在Interface Builder中作为单独的选项板项使用。
      这里写图片描述
      更改这些按钮使用的图像可能会导致不可预测的结果,如果想要一个具有定制外观的开关按钮或单选按钮,可以定制一个切换按钮或自定义NSButton

    虽然复选框和单选按钮可以显示所有三种状态的不同图像,但其他类型的按钮却不能。

    普通按钮的使用

    普通按钮执行按钮名所描述的动作,通常,它是一个圆角矩形,里面包含了它的名字。例如,这个按钮可能出现在一个对话框中,该对话框可以找到文档中的文本。
    这里写图片描述
    Interface Builder中创建按钮是最简单的。您还可以通过编程方式创建一个NSButton实例,其类型为NSMomentaryPushInButtonNSNoImage的图像位置和NSRoundedBezelStyle的边框。

    此类按钮也可以是一个图标按钮,也就是说,这个按钮主要由其图标识别,很少或没有文本。它是长方形的,像这样:
    这里写图片描述
    您可以使用Interface Builder或代码方式创建图标按钮。如果使用的是Interface Builder,从一个普通的按钮开始。如果您以代码方式创建它,那么创建一个NSButton实例,然后将其类型设置为NSMomentaryPushInButton,其图像位置设置为NSImageOnly,其边框类型设置为正方形边框类型。最后,设置图像为您想要的。

    注意:文本按钮上可以有一个小图像,图标按钮可以有一个标签。最重要的问题是什么最突出。如果是文本,将其视为文本按钮。如果是图像,将其视为图标按钮。

    您还可以有一个在两个状态之间切换的按钮,每个状态都有自己的标题和图像。例如,一个按钮可以在开始和停止之间切换。您可以和使用Interface Builder或代码创建普通按钮相同的方式创建一个按钮,只需将按钮类型更改为NSToggleButton。然后给按钮一个可选标题和图像以及一个常规标题和图像。该按钮首先显示常规标题和图像,然后在用户单击后显示替换的标题和图像。

    使用复选框

    一个复选框展示应用中的设置,复选框的另一个名字叫开关按钮,用一行文本标识一个复选框。

    使用NSButton的state属性去设置一个复选框的状态。可能的状态为NSOnState、NSOffState和NSMixedState。如果按钮是关闭的,则框是空的,反之,该框里面有个对号;如果按钮是混合状态,则框里有一个破折号。

    标准复选框

    Interface Builder是创建复选框最简单的方式。你也可以使用代码创建,继承自NSButton,其类型定义为NSSwitchButton

    不同于一组单选按钮,复选框中可以选择多个选项。这组按钮显示所有选中的字符都是粗体,没有斜体,还有一些是下划线:
    这里写图片描述

    图标复选框

    你也可以有一个复选框,它是一个图标按钮;也就是说,这是一个主要由其图标识别,很少或没有文本,如果按钮是关闭的,它似乎是突出的;如果按钮是开着的,它似乎是按进去的。(图片按钮不能显示混合状态。)

    您可以在Interface Builder或代码中创建图片复选框,如果您使用的是Interface Builder,在普通按钮的基础上设置;如果以代码方式创建,则需要创建NSButton的实例。然后通过将其类型设置为NSPushOnPushOffButton、图像位置设置为NSImageOnly、边框类型设置为正方形类型来更改它,然后设置图像为你想要的即可。

    单选按钮

    单选按钮显示应用程序中某些内容的设置,并且是一个组的一部分,其中一次只能有一个按钮是开启的,使用一组单选按钮在几个相互排斥的选项中进行选择。

    标准单选按钮

    标准的单选按钮是一个小圆圈,后面跟着一行文本。如果按钮关闭,圆圈是空的;如果按钮是打开的,圆圈被填充;如果按钮是混合状态,圆圈有一个破折号。
    例如,这组按钮显示所有选中的对象都是绿色的:
    这里写图片描述
    这个组显示部分选中的对象是红色的,部分是绿色的:
    这里写图片描述
    一组单选按钮由一个NSMatrix对象实现,该对象包含几个NSButtonCell实例,并具有NSRadioModeMatrix的跟踪模式。每当单击矩阵的某个按钮时,矩阵就会关闭先前选择的按钮并打开新单击的按钮。
    Interface Builder中创建一组开关按钮是最容易的。您还可以通过代码的方式创建一个NSMatrix对象并初始化它(在调用initWithFrame:mode:prototype:numberOfRows:numberOfColumns:),使用原型单元格和NSRadioModeMatrix的跟踪模式。对于原型对象,使用NSRadioButton类型创建一个NSButtonCell对象。清单1说明了如何进行此操作。
    清单1:通过代码创建单选按钮集

    - (void)awakeFromNib {
    
        NSButtonCell *prototype = [[NSButtonCell alloc] init];
        [prototype setTitle:@"Watermelons"];
        [prototype setButtonType:NSRadioButton];
        NSRect matrixRect = NSMakeRect(20.0, 20.0, 125.0, 125.0);
        NSMatrix *myMatrix = [[NSMatrix alloc] initWithFrame:matrixRect
                                                        mode:NSRadioModeMatrix
                                                   prototype:(NSCell *)prototype
                                                numberOfRows:3
                                             numberOfColumns:1];
        [[[self window] contentView] addSubview:myMatrix];
    
        NSArray *cellArray = [myMatrix cells];
        [[cellArray objectAtIndex:0] setTitle:@"Apples"];
        [[cellArray objectAtIndex:1] setTitle:@"Oranges"];
        [[cellArray objectAtIndex:2] setTitle:@"Pears"];
    }

    图标单选按钮

    单选按钮也可以是一个图标按钮;也就是说,这是一个主要由其图标识别,很少或没有文本。如果按钮是关闭状态的,那么它似乎是卡在里面的;如果按钮是开着的,它似乎是按进去的。(图标按钮不能显示混合状态。)
    您可以在Interface Builder或代码方式中创建一组图标单选按钮。如果您使用的是Interface Builder请从一个普通按钮开始;如果以代码方式创建,则创建一个按钮矩阵。然后将矩阵的跟踪模式改为NSRadioModeMatrix。将按钮的类型更改为NSPushOnPushOffButton,它们的图像位置更改为NSImageOnly,它们的边框类型更改为正方形边框类型。最后设置他们的图片为你想要的。

    查询按钮矩阵

    一组单选按钮或复选框以编程方式是一个NSMatrix对象,其组成对象是NSButtonCell对象。矩阵对象是一种特殊的控件。每个单元格都可以指定自己的目标对象和操作选择器。另外,NSMatrix可能有自己的目标和操作选择器。(有关矩阵对象的目标操作的更多信息,请参阅矩阵编程指南。)
    要找到用户选择的单选按钮或复选框(在用户单击时),可以为矩阵中的每个单元格指定目标和不同的操作选择器,然后实现相应的操作方法。然而,在单选按钮或复选框矩阵中查询当前选择的更有效的方法是为NSMatrix对象本身实现目标操作,并且在操作方法中确定现在选择了哪个单元(或单元)。这个的NSMatrix方法是selectedCellselectedCells
    清单1展示了一个action方法的实现,该方法响应单选按钮矩阵中的选择。
    清单1 查询所选的radio-button单元格的矩阵对象

     - (IBAction)findSelectedButton:(id)sender { // sender是一个矩阵对象
        NSButtonCell *selCell = [sender selectedCell];
        NSLog(@"Selected cell is %d", [selCell tag]);
    }

    这个代码片段说明了在处理矩阵中的单元格选择时可以应用的另一种技术。可以为矩阵中的每个单元格分配数字标记来识别它,然后在处理选择时查询这些标记值。

    设置按钮边框的外观

    可以通过改变按钮的形状和阴影来控制它的边框。注意,如果isborder返回NO,则边界不会出现。使用setborder:改变它的值。
    要更改边框的形状,请使用setBezelStyle:改变按钮的边框类型。有两大类边框类型。

    • 如果您的按钮主要通过文本标识,那么使用NSRoundedBezelStyle。它为文本按钮使用适当的边框样式,它是一个圆角矩形,如下所示:
      这里写图片描述
    • 如果您的按钮主要由图标标识,那么使用NSRegularSquareBezelStyle, NSThickSquareBezelStyleNSThickerSquareBezelStyle。这些类型使用带有边框的矩形按钮。小样式具有2像素的边框;中等样式有3像素的边框;大样式有4像素的边框。三种类型如下所示:
      这里写图片描述

    设置按钮标题

    一个按钮可以有两个与之相关的标题:普通标题和交替标题。如果按钮类型是NSMomentaryPushInButtonNSPushOnPushOff按钮、NSMomentaryLightButtonNSOnOffButton,则只显示正常的标题。如果按钮类型是NSMomentaryChangeButtonNSToggleButton,则当按钮的状态为off (NSOffState)时将显示正常标题,当按钮的状态为onmixed (NSOnState)时将显示备用标题。或NSMixedState)。如果你想要一个按钮显示所有三种状态的不同标题,你必须子类化NSButton
    如果希望标题包含纯文本,请使用setTitle:设置普通标题和setAlternateTitle:设置备用标题。如果希望标题包含样式文本(例如,斜体或粗体),请使用setAttributedTitle:setAttributedAlternateTitle:
    要设置标题相对于按钮图像的定位方式,使用setImagePosition:,在设置按钮图像中描述。如果没有图片,标题将在按钮内水平和垂直居中。如果标题位于图像的上方、下方或重叠部分,则标题将在按钮内水平居中。要隐藏标题,使用setImagePosition:带有NSImageOnly的参数。
    要设置标题的字体,发送setFont:到按钮的按钮单元格。
    如果想让按钮在鼠标移动到标签上时显示其标题,需要使用Tool Tips

    设置按钮图标

    一个按钮可以有两个与之相关联的图像:普通图像和交替图像。如果按钮类型是NSMomentaryPushInButtonNSPushOnPushOff按钮、NSMomentaryLightButtonNSOnOffButton,则只显示正常的图像。如果按钮类型为NSMomentaryChangeButtonNSToggleButton,则正常图像在按钮状态为off时显示(NSOffState),而备用图像在按钮状态为onmixed (NSOnState)时显示。或NSMixedState)。如果你想要一个按钮显示所有三种状态的不同图像,你必须子类化NSButton。(尽管开关按钮和单选按钮可以显示所有三种状态的不同图像,但这个功能没有公共接口。)
    要设置正常的图像,使用setImage:。要设置备用映像,使用setAlternateImage:

    注意:如果按钮是复选框或单选按钮,不要改变其图像。这些按钮的图像是系统定义的,更改它们可能导致不可预知的结果。如果您想要一个具有定制外观的开关按钮或单选按钮,可以定制一个切换按钮(类型为NSToggleButton的按钮)或NSButton子类。
    要为按钮的图像设置位置,使用setImagePosition:,下面的值之一。默认是NSNoImage

    NSNoImage这里写图片描述 NSImageOnly这里写图片描述 NSImageOverlaps这里写图片描述
    NSImageLeft这里写图片描述 NSImageRight这里写图片描述
    NSImageBelow这里写图片描述 NSImageAbove这里写图片描述

    隐藏按钮

    有两种方法可以从视图中隐藏按钮:它可以是完全透明的,也可以只在鼠标经过它时才显示它的边框。

    • 要使按钮透明,使用setTransparent:。一个透明的按钮跟踪鼠标并发送它的动作,但不绘制自己。这对于将屏幕上的区域敏感化非常有用,这样当该区域收到鼠标单击时,操作就会发送到目标。
    • 要让一个按钮显示其边框,只有当它处于活动状态并且鼠标在它上面时,才可以使用setshowsborderonly目地:。其余的按钮的组件总是绘制。下面是一些按钮的例子,这些按钮只在鼠标移动到它们上面时才显示它们的边框:
      这里写图片描述

    设置按钮为默认样式

    如果按钮具有NSRoundedBezelStyle 边框类型,您可以将其标记为默认按钮。默认按钮是选中样式的,当用户按下Return时调用其操作消息。它看起来像这样:
    这里写图片描述
    若要将按钮标记为默认值,用 setKeyEquivalent:方法将其快捷键设置为Return

    [myButton setKeyEquivalent:@"\r"];

    可以在Interface Builder中设置快捷键,默认按钮有一个在它周围绘制的粗轮廓,在按钮的边界之外,界面设计应该考虑到额外的空间。

    设置按钮快捷键

    一个按钮可以有一个等效的键,这样当用户按下那个键时,按钮就会响应,就好像它已经被点击过一样。
    注意,如果将按钮的快捷键设置为Return,该按钮将成为默认按钮。
    通常在Interface Builder中设置一个按钮的快捷键。为此,选择按钮并打开检查器的attributes窗格。显示按钮的属性,单击键Equiv字段,并键入要与按钮相关联的键或键组合。(按“清除”键可以删除等效键。)

    要在程序中设置快捷键,可以使用setKeyEquivalent:并传入相应的字符即可。例如,设置Return为该按钮的快捷键:

    [myButton setKeyEquivalent:@"\r"];

    要将按钮的键值设置为非打印字符,可以使用NSResponder定义的键常量,如下例所示,它将按钮的键值设置为左箭头键。

    unichar arrowKey = NSLeftArrowFunctionKey;
    [button setKeyEquivalent:[NSString stringWithCharacters:&arrowKey length:1]];

    子类化NSButton

    如果创建了一个NSButton的子类来执行它自己的初始化,覆盖指定的初始化器(NSViewinitWithFrame:方法)。如果想在NSButton的子类中使用自定义NSButtonCell子类,必须重写cellClass:方法。

    展开全文
  • Button 4种点击事件

    千次阅读 2017-03-28 16:02:26
    Android的组件都拥有点击事件,可以为其设置点击... 第一种是,直接创建一个匿名内部类button.setOnclickListener(new onClickListener(){ 覆盖 onClick(){ ... } })Button bt_1 = (Button) findViewById(R.id.bt_1);

    Android的组件都拥有点击事件,可以为其设置点击事件。我们常用的点击事件有4种。
    第一种是,直接创建一个匿名内部类

    button.setOnclickListener(new onClickListener(){
        覆盖
        onClick(){
        完成点击事件的逻辑。
        }
    })
    Button bt_1 = (Button) findViewById(R.id.bt_1);
    bt_1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "匿名内部类实现点击件",0).show();
    }  

    第二种,让我当前这个类,来实现OnclickListener这个接口,我一实现这个接口,我这个类就会报错,然后提示我实现onclickListener这个接口里面的onclick方法,然后我就到要指定点击时间的组件中写下方语句就行
    Button,setOnClickListener(this);就可以了,
    注意在写onclick(View v)方法的时候,需要判断v.getId()==Button的id,如果相同,那么就做逻辑功能。

    public class MainActivity extends Activity implements OnclickListener{
        @Override   
        protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button bt_1 = (Button) findViewById(R.id.bt_1);
        bt_1.setOnClickListener(this);
        }
    
        @Override
        public void onClick(View v) {
            Toast.makeText(MainActivity.this, "本类实现OnclickListener接口", 0).show();
        }
    }  

    第三种:我自己写一个myListener类来实现OnclickListener这个接口,然后这里面就实现了onclick方法.当button在创建点击事件的时候就button.setOnClickListener(new myListener());

    class MyOnClickListener implements OnClickListener{
    
        @Override
        public void onClick(View v) {
            Toast.makeText(MainActivity.this, "内部类实现点击事件", 0).show();
        }
    
    }  
    bt_1.setOnClickListener(new MyOnClickListener());  

    第四种:在布局文件中需要设定点击时间的组件上(组件可以是任何组件),设定onclick的属性,后面给的参数就是指定的点击事件的方法,然后复制这个方法名,到对应的activity类里面去实现这个方法,方法有固定写法

    public void 方法名(View v){
        方法体;
    }
    <Button 
        android:id="@+id/bt_1"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:onClick="click"
        android:text="@string/bt1"/>  
    然后在MainAcvitity中添加相应的事件 
    public void click(View v){
            Toast.makeText(MainActivity.this, "XML实现点击事件", 0).show();
        }  
    展开全文
  • 漂亮的Button按钮样式

    万次阅读 多人点赞 2018-08-02 16:26:36
    开发中各种样式的Button,其实这些样式所有的View都可以共用的,可能对于你改变的只有颜色 所有的都是用代码实现   边框样式,给你的View加上边框 &lt;Button android:layout_width="0dip" ...

    开发中各种样式的Button,其实这些样式所有的View都可以共用的,可能对于你改变的只有颜色

    所有的都是用代码实现

     

    边框样式,给你的View加上边框

        <Button
            android:layout_width="0dip"
            android:layout_height="match_parent"
            android:layout_margin="5dip"
            android:layout_weight="1"
            android:background="@drawable/border_line_while"
            android:gravity="center"
            android:text="边框样式"
            />
    

    边框样式border_line_while.xml

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:useLevel="false"
        >
        <solid android:color="@null"/>
        <padding android:left="1dip"
            android:right="1dip"
            android:bottom="1dip"/>
    
        <stroke android:width="1dip"
            android:color="@color/theme_red"
            />
        <!--边框宽度-->
        <size android:width="15dip"
            android:height="15dip"
            />
        <!--边框-->
    </shape>
    

    圆角Button

        <Button
            android:layout_width="0dip"
            android:layout_height="match_parent"
            android:layout_margin="5dip"
            android:layout_weight="1"
            android:background="@drawable/btn_bg_red"
            android:gravity="center"
            android:text="圆角Button"
            />
    

    圆角样式btn_bg_red.xml

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android">
        <solid android:color="@color/theme_red"/>
        <corners android:topLeftRadius="10dip"
            android:topRightRadius="10dip"
            android:bottomRightRadius="10dip"
            android:bottomLeftRadius="10dip" />
        <!--圆角矩形白色背景-->
    </shape>
    

    点底色的圆角Button,其实综合上面的就可以自己写

     <Button
            android:layout_width="0dip"
            android:layout_height="match_parent"
            android:layout_margin="5dip"
            android:layout_weight="1"
            android:background="@drawable/check_border"
            android:gravity="center"
            android:text="带边框颜色的Button"
            />
    

    点底色的圆角Button样式check_border.xml

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <!--<item android:state_pressed="true">-->
            <!--<shape android:shape="rectangle">-->
                <!--<stroke android:width="1px" android:color="@color/color_light_grey" />-->
                <!--<corners android:radius="3dp" />-->
                <!--<solid android:color="@color/color_detach_line" />-->
            <!--</shape>-->
        <!--</item>-->
        <item>
            <shape android:shape="rectangle">
                <stroke android:width="1px" android:color="@color/theme_red" />
                <corners android:radius="10dp" />
                <solid android:color="@color/color_check_bg" />
            </shape>
        </item>
    </selector>
    

    带点击圆角状态的Button,依赖样式文件

     <Button
                android:layout_width="0dip"
                android:layout_height="match_parent"
                android:layout_margin="5dip"
                android:layout_weight="1"
                android:background="@drawable/btn_nor_down"
                android:gravity="center"
                android:text="带点击状态的Button"
                />
    

    带点击圆角状态的Button样式btn_nor_down.xml

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true" android:drawable="@drawable/check_border" />
        <item android:state_focused="true" android:drawable="@drawable/check_border" />
        <item android:state_checked="true" android:drawable="@drawable/check_border" />
        <item android:state_selected="true" android:drawable="@drawable/check_border"/>
        <item android:drawable="@drawable/btn_bg_red"></item>
    </selector>
    

    带点击状态的Button,这个不依赖圆角样式

       <Button
                android:layout_width="0dip"
                android:layout_height="match_parent"
                android:layout_margin="5dip"
                android:layout_weight="1"
                android:background="@drawable/btn_bottom_confirm_bg"
                android:gravity="center"
                android:text="带点击状态的Button"
                />
    

    带点击圆角状态的Button样式btn_bottom_confirm_bg.xml

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true">
            <shape android:shape="rectangle">
                <solid android:color="#f5f5f5"/>
                <stroke android:width="1px"
                        android:color="#cfcfd2"/>
                <padding android:top="1px"/>
            </shape>
        </item>
        <item>
            <shape android:shape="rectangle">
                <solid android:color="@color/white"/>
                <stroke android:width="1px"
                        android:color="#cfcfd2"/>
                <padding android:top="1px"/>
            </shape>
        </item>
    </selector>
    

    原形数字提醒

        <Button
            android:layout_width="50dip"
            android:layout_height="50dip"
            android:layout_marginLeft="20dip"
            android:background="@drawable/hint_superscript_red"
            android:gravity="center"
            android:text="数字提醒"
            />
    

    原形数字提醒样式hint_superscript_red.xml

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval"
        android:useLevel="false">
        <solid android:color="@color/white"/>
        <padding android:left="1dp"
            android:top="1dp"
            android:right="1dp"
            android:bottom="1dp"
            />
        <!--描边  红色边框-->
        <stroke android:width="1dp"
            android:color="@color/theme_red"
            />
        <size android:width="15dp"
            android:height="15dp"
            />
    </shape>
    

    请求网络数据等待框

       <ProgressBar
                android:layout_width="50dip"
                android:layout_height="50dip"
                android:layout_marginLeft="20dp"
                android:indeterminate="true"
                android:indeterminateDrawable="@drawable/progresstyle"
                android:indeterminateTintMode="src_in"/>
    
    

    请求网络数据等待框样式progresstyle.xml

    <?xml version="1.0" encoding="utf-8"?>
    <rotate
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:fromDegrees="0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toDegrees="1080.0" >
    
        <shape
            android:innerRadiusRatio="3"
            android:shape="ring"
            android:thicknessRatio="8"
            android:useLevel="false" >
            <gradient
                android:centerY="0.50"
                android:endColor="@color/theme_red"
                android:startColor="@color/white"
                android:type="sweep"
                android:useLevel="false" />
        </shape>
    
    </rotate>
    

    进度条

        <ProgressBar
            android:id="@+id/my_progress"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="match_parent"
            android:layout_height="30dp"
            android:layout_marginLeft="20dp"
            android:max="10"
            android:progress="3"
            android:progressDrawable="@drawable/progressbar_color"/>
    

    进度条样式progressbar_color.xml

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <!-- 背景  gradient是渐变,corners定义的是圆角 -->
        <item android:id="@android:id/background">
            <shape>
                <corners android:radius="3dp"/>
    
                <solid android:color="@color/theme_red" />
            </shape>
        </item>
        <!-- 第二条进度条颜色 -->
        <item android:id="@android:id/secondaryProgress">
            <clip>
                <shape>
                    <corners android:radius="3dp"/>
                    <gradient
                        android:angle="90.0"
                        android:centerColor="#ac6079"
                        android:centerY="0.45"
                        android:endColor="#6c213a"
                        android:startColor="#FF51AAE6" />
                </shape>
            </clip>
        </item>
        <!-- 进度条 -->
        <item android:id="@android:id/progress">
            <clip>
                <shape>
                    <corners android:radius="3dp"/>
                    <solid android:color="#FF51AAE6" />
                </shape>
            </clip>
        </item>
    
    </layer-list>
    

    底部线条EditText

      <EditText
                android:text="底部线条EditText"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/edit_for_line_bg"
                />
    

    底部线条EditText样式edit_for_line_bg.xml

    <?xml version="1.0" encoding="utf-8"?>
    <inset xmlns:android="http://schemas.android.com/apk/res/android"
        android:insetBottom="@dimen/abc_edit_text_inset_bottom_material">
        <selector>
            <item android:drawable="@drawable/abc_textfield_activated_mtrl_alpha"/>
        </selector>
    
    </inset>
    

    小礼物走一走

    展开全文
  • Tkinter 组件详解(二):Button

    万次阅读 2018-12-19 22:00:10
    Tkinter 组件详解之Button 简介 Button(按钮)组件用于实现各种各样的按钮。Button 组件可以包含文本或图像,你可以将一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行。 ...
  • Qt Button控件的属性说明

    千次阅读 2019-03-12 14:24:06
    Qt中Button系列根据用途被划分为不同的定义,其实现框架为QAbstractButton提供按钮的通用性功能,此为抽象基类,所以无法进行实例化。用户需要继承定义此类,实现paintEvent,实现具体的展示。常见的Button有...
  • Button Class(按钮类别)

    千次阅读 2019-01-20 09:31:22
    代码整理: 1.提供IsPressing信号,让其他模块或后续模块得知目前用户硬件输入状态。 2.OnPressed 信号,提供…目前是否刚刚按下此按钮。 3.OnReleased信号,…目前是否刚刚释放此按钮。 在Assets目录下新建类程式码...
  • 微信小程序学习(10)-button控件

    万次阅读 2016-11-28 15:59:27
    button控件学习 1.button属性 2.size和type属性对button的影响 size属性的默认值为default,type属性的默认值也为default,如果值为default时,该属性可以省略; size属性为default size属性为...
  • CSS 按钮button美化

    万次阅读 多人点赞 2017-08-31 09:17:13
    .login-button { /* 按钮美化 */ width: 270px; /* 宽度 */ height: 40px; /* 高度 */ border-width: 0px; /* 边框宽度 */ border-radius: 3px; /* 边框半径 */ background: #1E90FF; /* 背景颜色 */ cursor: ...
  • Button 详解

    千次阅读 2018-01-24 10:16:55
    知识点: 1、输入事件大纲(事件监听、事件处理、触摸模式、处理焦点)。 2、控件都可看做View。响应事件是基于view的。...3、事件监听(无返回类型、有些会返回boolean类型)(onclick()、onLongClick()、...
  • 点击button自动提交表单

    千次阅读 2018-12-29 11:20:14
    一个button在一个表单内,点击它直接会让表单提交 如一个&...原因是button如果不设置它的type,它的type默认是submit,而button在表单会让它自动提交 所以要设置它的type="button"...
  • Button按钮的四种点击方式

    千次阅读 2017-05-18 10:53:15
    Button按钮的四种点击方式 第一种:  private Button btn;  private ImageView iv;    @Override  protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);
  • button" value="我是一个按钮" onclick="javascrtpt:window.location.href='http://blog.sina.com.cn/mleavs'"&gt; 触发一个函数跳转: &lt;script&gt; function jump(){ ...
  • 前端开发框架Semantic UI(一)

    万次阅读 2018-03-25 13:38:38
    文章转载自:http://blog.csdn.net/a464057216/article/details/52493469文章转载自:http://blog.csdn.net/a464057216/article/details/52493469文章转载自:...
  • CSS消除button标签的默认样式

    万次阅读 2018-05-10 09:57:53
    //消除button的默认样式 margin: 0; padding: 0; border: 1px solid transparent; //自定义边框 outline: none; //消除默认点击蓝色边框效果
  • 去除button默认样式

    万次阅读 2018-09-22 16:05:54
    border: 0; background-color: transparent; outline: none;      
  • VUE element-ui 之button 按钮简介

    万次阅读 2018-11-15 11:04:19
    element-ui之Button 按钮 按钮等可以通过vue绑定属性来控制某一些属性 各式各样的按钮 &amp;amp;lt;el-button&amp;amp;gt;鼠标滑过/点击背景变淡&amp;amp;lt;/el-button&amp;amp;gt; &amp...
  • 微信小程序中更改button的样式

    万次阅读 2018-09-17 18:15:43
    Button按钮 &lt;button class='getCodeView firstListLineStyle' disabled='{{disabled}}' &lt;/button&gt; Button按钮样式 .getCodeView { width: 100%; margin-right: 20rpx; height: ...
  • Bootstrap 基础CSS - 按钮(Buttons)

    万次阅读 2013-01-27 21:34:58
    默认按钮 建议只在和标签上应用.btn。...Button class="" Description Default btn Standard gray button with gradient Primary btn btn-primary Provides extra visual weight
  • c#设置button、label等控件的背景色为透明

    万次阅读 热门讨论 2015-02-09 11:47:41
    yous
1 2 3 4 5 ... 20
收藏数 1,297,256
精华内容 518,902
关键字:

button