AlertDialog.Builder builder = new AlertDialog.Builder(activity);
builder.setTitle("ALERTTILESTRING")
.setMessage("alertNameString")
.setCancelable(false)
.setNegativeButton("Close",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
}
Я надеюсь, что приведенный выше код является хорошим, в котором диалог работает очень хорошо
Я выяснил сам.
На первый взгляд разница между моими примерами не очень очевидна, но если бы пример был немного более сложным, это имело бы смысл.
] Следующее расширение поясняет различия:
<xsd:element name="XList">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="X" type="xsd:token"
minOccurs="1" maxOccurs="1"/>
<xsd:element name="Y" type="xsd:token"
minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
ведет к
<XList>
<X>Only X</X>
<Y>Only Y</Y>
</XList>
, тогда как
<xsd:element name="XList">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="X" type="xsd:token"
minOccurs="1" maxOccurs="unbounded"/>
<xsd:element name="Y" type="xsd:token"
minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
ведет к
<XList>
<X>First X</X>
<X>Second X</X>
<X>Third X</X>
...
<Y>First Y</Y>
<Y>Second Y</Y>
...
</XList>
, а
<xsd:element name="XList">
<xsd:complexType>
<xsd:sequence minOccurs="1" maxOccurs="unbounded" >
<xsd:element name="X" type="xsd:token"
minOccurs="2" maxOccurs="2"/>
<xsd:element name="Y" type="xsd:token"
minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
ведет к
<XList>
<X>First X</X>
<X>Second X</X>
<Y>First Y</Y>
<X>Third X</X>
<X>Fourth X</X>
<Y>Second Y</Y>
...
</XList>
, а
<xsd:element name="XList">
<xsd:complexType>
<xsd:sequence minOccurs="1" maxOccurs="unbounded" >
<xsd:element name="X" type="xsd:token"
minOccurs="1" maxOccurs="unbounded"/>
<xsd:element name="Y" type="xsd:token"
minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
ведет к
<XList>
<X>First X</X>
<X>Second X</X>
<X>Third X</X>
...
<Y>First Y</Y>
<Y>Second Y</Y>
...
<X>Fourth X</X>
<X>Fifth X</X>
<X>Sixth X</X>
...
<Y>Third Y</Y>
<Y>Fourth Y</Y>
...
</XList>
Если ваша последовательность содержит только одного дочернего элемента, я полагаю, это не имеет большого значения. Я бы поместил его в xsd: element, хотя: я бы обычно помещал их туда, если бы в последовательности было более одного элемента.