GVKun编程网logo

如何在
标记内转义(pre标记的作用是)

11

在本文中,我们将详细介绍如何在标记内转义的各个方面,并为您提供关于pre标记的作用是的相关解答,同时,我们也将为您带来关于AndroidGoogleMapV2:如何在点击其他标记时更改以前点击的标记图

在本文中,我们将详细介绍如何在

标记内转义的各个方面,并为您提供关于pre标记的作用是的相关解答,同时,我们也将为您带来关于Android Google Map V2:如何在点击其他标记时更改以前点击的标记图标、android – 在Ksoap2中的标记内嵌套属性、angular – 如何在自定义组件内转换输入数据?、AngularJS – Google将ui-sref映射到标记内的有用知识。

本文目录一览:

如何在<pre>标记内转义<and>(pre标记的作用是)

如何在
标记内转义(pre标记的作用是)

我正在尝试写一篇博客文章,其中在<pre>标签中包含一个代码段。该代码段包括一个通用类型,并用于<>定义该类型。该段的外观如下:

<pre>    PrimeCalc calc = new PrimeCalc();    Func<int, int> del = calc.GetNextPrime;</pre>

产生的HTML会删除<>和,最终如下所示:

PrimeCalc calc = new PrimeCalc();Func del = calc.GetNextPrime;

我如何转义<>它们以使它们显示在HTML中?

答案1

小编典典
        PrimeCalc calc = new PrimeCalc();        Func<int, int> del = calc.GetNextPrime;    

Android Google Map V2:如何在点击其他标记时更改以前点击的标记图标

Android Google Map V2:如何在点击其他标记时更改以前点击的标记图标

更新:我通过添加prevIoUsMarker对象解决了性能问题.因此,只有先前点击的标记将被删除并替换为默认图标.但是,当我单击标记时,信息窗口仍未显示.

我有一个地图视图并在其上设置了一些标记.我想要的是当我点击一个标记时,它将其图标更改为一个不同的图标,当我点击另一个标记时,前一个标记的图标应该更改为其原始图标.

我所做的就是这样,但只要我点击标记就会改变标记图标.

@Override
public boolean onMarkerClick(Marker marker) { //Called when a marker has been clicked or tapped.

    LatLng markerPos=marker.getPosition();
    String markerLocationName=marker.getTitle();
    String markerSubCategoryName=marker.getSnippet();

    marker.remove();

    MarkerOptions markerOptions =
            new MarkerOptions().position(markerPos)
                    .title(markerLocationName)
                    .snippet(markerSubCategoryName)
                    .icon(BitmapDescriptorFactory.fromresource(R.drawable.new_icon));// Changing marker icon
    mMap.addMarker(markerOptions);
    Log.d("marker","change marker icon"); // can open a dialog window here
    return false;
}

因此,如果我单击2个标记,我将显示2个新图标,同时我想要的只是当前单击的标记更改其图标.

所以我也做了类似的事情,增加了2行代码.它成功地做了我想要的但它有一些缺点(见下文).

@Override
public boolean onMarkerClick(Marker marker) { //Called when a marker has been clicked or tapped.

    mMap.clear();
    populateallMarkersOnMap();//repopulate markers on map

    LatLng markerPos=marker.getPosition();
    String markerLocationName=marker.getTitle();
    String markerSubCategoryName=marker.getSnippet();

    marker.remove(); //remove the current clicked marker

    MarkerOptions markerOptions =
            new MarkerOptions().position(markerPos)
                    .title(markerLocationName)
                    .snippet(markerSubCategoryName)
                    .icon(BitmapDescriptorFactory.fromresource(R.drawable.new_icon));// Changing marker icon
    mMap.addMarker(markerOptions); //add marker with new icon into map
    return false;
}

缺点是1 /它“禁用”信息窗口(同样的事情也发生在第一种方式). 2 /它清除地图上的所有标记并再次设置所有标记.想象一下,我有100个标记,如果每次点击都会出现性能问题吗?

populateallMarkersOnMap()目前可以像这样简单:

private void populateallMarkersOnMap(){
    setMarker(latA1,lonA1,"A1","A1.1"); 
    setMarker(latA2,lonA2,"A2","A2.1"); 
    // ... (100 times or populated via a loop) 
};

那么当我点击新标记时,有没有办法让以前点击的标记将其图标更改回默认值?为我的英语道歉,如果你认为我应该为我的问题添加另一个标题,请帮忙.

解决方法

最后,我找到了最好,最简单的方法.我创建了一个prevIoUsMarker对象并存储了当前单击的标记:
@Override
public boolean onMarkerClick(Marker marker) { //Called when a marker has been clicked or tapped.
    if(prevIoUsMarker!=null){
        prevIoUsMarker.setIcon(BitmapDescriptorFactory.fromresource(R.drawable.dot_icon));
    }
    marker.setIcon(BitmapDescriptorFactory.fromresource(R.drawable.ct_icon));
    prevIoUsMarker=marker; //Now the clicked marker becomes prevIoUsMarker
    return false;
}

android – 在Ksoap2中的标记内嵌套属性

android – 在Ksoap2中的标记内嵌套属性

嗨我想使用上面的肥皂xml请求肥皂

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style">
   <soapenv:Header/>
   <soapenv:Body>
      <urn:AvailCheck>
         <IUvail>
            <Unit>PC</Unit>
            <Qty>3000</Qty>
         </IUvail>
      </urn:AvailCheck>
   </soapenv:Body>
</soapenv:Envelope>

所以我使用kso​​ap库创建了一个代码.我为soapobject创建了一个对象

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

并添加了这样的属性

request.addProperty("Unit", "PC");
request.addProperty("Qty", "3000");

但问题是我无法添加< IUvail>在requset ..所以我怎么能添加这个?

解决方法:

你可以像这样传递一个复杂的对象(IUvail):

IUvail.java

import java.util.Hashtable;

import org.ksoap2.serialization.KvmSerializable;
import org.ksoap2.serialization.PropertyInfo;
import org.ksoap2.serialization.soapObject;

public class IUvail implements KvmSerializable {
    private String unit;
    private int qty;

public IUvail() {}

public IUvail(String unit, int qty) {
    this.unit = unit;
    this.qty = qty;
}

public void setUnit(String unit) { this.unit = unit; }
public void setQty(int qty) { this.qty = qty;}
public String getUniy() { return unit;}
public int getQty() { return qty;}

public Object getProperty(int arg0) {
    switch(arg0) {
        case 0:
            return unit;
        case 1:
            return qty;
     }
     return null;
}

public int getPropertyCount() {
    return 2;
}

public void getPropertyInfo(int index, Hashtable arg1, PropertyInfo propertyInfo) {
    switch(index){
        case 0:
            propertyInfo.name = "unit";
            propertyInfo.type = PropertyInfo.STRING_CLASS;
            break;
        case 1:
            propertyInfo.name = "qty";
            propertyInfo.type = PropertyInfo.INTEGER_CLASS;
            break;
        default:
            break;
    }
}

public void setProperty(int index, Object value) {
    switch(index) {
        case 0:
            this.unit = value.toString();
            break;
        case 1:
            this.qty = Integer.parseInt(value.toString());
            break;
        default:
            break;
   }
}  }

然后

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
IUvail iuvail = new IUvail();
iuvail.setUnit("PC");
iuvail.setQty(3000);
request.addProperty("IUvail", iuvail);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
            SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setoutputSoapObject(request);
envelope.addMapping(TARGET_NAMESPACE, "IUvail", new IUvail.getClass());

AndroidHttpTransport transport = new AndroidHttpTransport(URL);
try {
    transport.call(NAMESPACE + METHOD_NAME, envelope);
    /* Get the response: it depends on your web service implementation */
} catch (Exception e) {
    e.printstacktrace();
}

NAMESPACE,URL,METHOD_NAME和TARGET_NAMESPACE取决于您的ws.

angular – 如何在自定义组件内转换输入数据?

angular – 如何在自定义组件内转换输入数据?

例如,我有组件:

@Component({
  selector: 'my-selector',inputs: ['data'],moduleId: module.id,template: '<p>{{transformedData}}</p>'
})
export class MyComponent {
  public transformedData: string;
  @input() public data: string;

  // How to call this event on "data" change?
  public someEvent() {
    this.transformedData = this.data + '!';
  }
}

如何在数据更改时调用someEvent()?

解决方法

更改数据时onchanges会被触发.因此,在onChanges中你可以调用someEvent函数.

export class MyComponent {
  public transformedData: string;
  @input() public data: string;

  ___________________________________________________________________________________________
  // EDIT: you can also do it. Not necessary but can be done this way too.
 //  Note: If you go with this approach,you don't need to use onchanges hook and don't require above @Input public data line.
    @input() set data(data:string)
           console.log(data);
           this.someEvent();
   }
 ____________________________________________________________________________________________ 


  ngOnChanges(...args: any[]) {

        console.log(args);
        this.someEvent();
  }

  // How to call this event on "data" change?
  public someEvent() {
    this.transformedData = this.data + '!';
  }
}

AngularJS – Google将ui-sref映射到标记内

AngularJS – Google将ui-sref映射到标记内

嗨,我有角度的谷歌地图,我正在尝试使用按钮进行自定义marker.content到达另一条路线.我正在设置像这样的服务

this.setMarker = function (item,map) {
    var position = new google.maps.LatLng(item.loc[1],item.loc[0]);
    bounds.extend(position);

    var marker = new google.maps.Marker({
        map: map,position: position,title: item.name,icon: iconBase + 'basic_pin.png'
    });

    marker.content = '<div>' +
    '<div>' + item.user.name + '</div>' +
    '<div>' +
    '<dl>' +
    '<dt>created:</dt>' +
    '<dd>'  + $filter('dateFormat')(item.created_at)  +'</dd>' +
    '<dt>tracks:</dt>' +
    '<dd>' + item.tracks.length + '</dd>' +
    '<dt>type:</dt>' +
    '<dd>' + utilsFactory.getPlaylistType(item.settings.is_private,item.settings.is_yooBox,item.settings.is_locked) + '</dd>' +
    '</dl>' +
    '</div>' +
    '<div>                ' +
    '<a ui-sref="detailSite({playlistID: item._id})" ng-show="false">play</a>' +
    '</div>'+
    '</div>';

    return marker;
};

问题在于ui-sref与其他角度指令不同.有谁知道这个解决方案?

解决方法

你必须使用$compile服务.

marker.content = '<div>' +
    '<div>' + item.user.name + '</div>' +
    '<div>' +
    '<dl>' +
    '<dt>created:</dt>' +
    '<dd>'  + $filter('dateFormat')(item.created_at)  +'</dd>' +
    '<dt>tracks:</dt>' +
    '<dd>' + item.tracks.length + '</dd>' +
    '<dt>type:</dt>' +
    '<dd>' + utilsFactory.getPlaylistType(item.settings.is_private,item.settings.is_locked) + '</dd>' +
    '</dl>' +
    '</div>' +
    '<div>                ' +
    '<a ui-sref="detailSite({playlistID: item._id})" ng-show="false">play</a>' +
    '</div>'+
    '</div>';

    var compiledContent = $compile(marker)($scope);

    return compiledContent[0];

文档在这里$compile

今天关于如何在

标记内转义pre标记的作用是的介绍到此结束,谢谢您的阅读,有关Android Google Map V2:如何在点击其他标记时更改以前点击的标记图标、android – 在Ksoap2中的标记内嵌套属性、angular – 如何在自定义组件内转换输入数据?、AngularJS – Google将ui-sref映射到标记内等更多相关知识的信息可以在本站进行查询。

本文标签: